1.5.3. Wydrukuj alfabet

ZADANIE: Wydrukuj alfabet w porządku naturalnym, a następnie odwróconym w formacie: “mała => duża litera”. W jednym wierszu trzeba wydrukować po pięć takich grup.

POJĘCIA: iteracja, pętla, kod ASCII, lista, inkrementacja, operatory arytmetyczne, logiczne, przypisania i zawierania.

Kod nr
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#! /usr/bin/env python
# -*- coding: utf-8 -*-

print "Alfabet w porządku naturalnym:"
x = 0
for i in range(65, 91):
    litera = chr(i)
    x += 1
    tmp = litera + " => " + litera.lower()
    if i > 65 and x % 5 == 0:
        x = 0
        tmp += "\n"
    print tmp,

x = -1
print "\nAlfabet w porządku odwróconym:"
for i in range(122, 96, -1):
    litera = chr(i)
    x += 1
    if x == 5:
        x = 0
        print "\n",
    print litera.upper(), "=>", litera,

Pętla for wykorzystuje zmienną iteracyjną i, która przybiera wartości z listy liczb całkowitych zwróconej przez funkcję range(). Parametry tej funkcji określają wartość początkową i końcową listy, przy czym wartość końcowa nie wchodzi do listy. Kod range(122,96,-1) generuje listę wartości malejących od 122 do 97(!) z krokiem -1.

Funkcja chr() zwraca znak, którego kod ASCII, czyli liczbę całkowitą, przyjmuje jako argument. Metoda lower() typu string (napisu) zwraca małą literę, upper() – dużą. Wyrażenie przypisywane zmiennej tmp pokazuje, jak można łączyć napisy (konkatenacja).

Zmienna pomocnicza x jest zwiększana (inkrementacja) w pętlach o 1. Wyrażenie x += 1 odpowiada wyrażeniu x = x + 1. Pierwszy warunek wykorzystuje operator logiczny and (koniunkcję) i operator modulo % (zwraca resztę z dzielenia), aby do ciągu znaków w zmiennej tmp dodać znak końca linii (\n) za pomocą operatora +=. W drugim warunku używamy operatora porównania ==.

Zob.: operatory dostępne w Pythonie.

1.5.3.1. Zadania dodatkowe

Uprość warunek w pierwszej pętli for drukującej alfabet w porządku naturalnym tak, aby nie używać operatora modulo. Wydrukuj co n-tą grupę liter alfabetu, przy czym wartość n podaje użytkownik. Wskazówka: użyj opcjonalnego, trzeciego argumentu funkcji range(). Sprawdź działanie różnych operatorów Pythona w konsoli.


Licencja Creative Commons Materiały Python 101 udostępniane przez Centrum Edukacji Obywatelskiej na licencji Creative Commons Uznanie autorstwa-Na tych samych warunkach 4.0 Międzynarodowa.

Utworzony:2017-09-08 o 19:38 w Sphinx 1.4.5
Autorzy:Patrz plik “Autorzy”