Académique Documents
Professionnel Documents
Culture Documents
Univerzitet u Beogradu
Elektrotehnički fakultet
Sadržaj
Liste
⚫ Ispisivanje liste i sortiranje liste
⚫ Ugrađene funkcije za rad sa listama
⚫ Kreiranje liste prema zadatom pravilu
Stringovi
⚫ Operacije sa stringovima
⚫ Formatiranje stringova
⚫ ASCII
Torke
⚫ Pakovanje i raspakivanje torki
ETF Beograd::Programiranje 1 2/38
Ispisivanje liste
Lista se može ispisati:
⚫ Kao sama lista, okružena zagradama []
⚫ Konvertovana u string
⚫ Element po element, korišćenjem petlje
⚫ Korišćenjem operatora * za raspakivanje
lista = [1, 2, 3, 4, 5]
print(lista) # [1, 2, 3, 4, 5]
print(str(lista)[1:-1]) # 1, 2, 3, 4, 5
for x in lista:
print(x, end=" ") # 1 2 3 4 5
print()
print(*lista) # 1 2 3 4 5
print(*lista, sep=", ") # 1, 2, 3, 4, 5
def fun(elem):
return elem % 5
lista = [3, 4, 5, 2, 1]
lista.sort(); # [1, 2, 3, 4, 5]
lista.sort(reverse=True); # [5, 4, 3, 2, 1]
lista.sort(key=fun); # [5, 1, 2, 3, 4]
lista.sort(key=lambda x : x % 5, reverse=True) # [4, 3, 2, 1, 5]
lista = [3, 4, 5, 2, 1]
print(*reversed(lista)) # 1 2 5 4 3
for i, x in enumerate(lista):
print("lista[{}] = {}".format(i, x))
prva = [3, 4, 5, 2, 1]
druga = [1, 2, 3, 4, 5]
for p, d in zip(prva, druga):
print(p + d, end=" ") # 4 6 8 6 6
nova = [] nova = []
for x in stara: for x in stara:
nova.append(x**2) if x % 2 == 1:
nova.append(x**2)
nova = [
x**2
for x in stara nova = [
] x**2
for x in stara
if x % 2 == 1
nova = [x**2 for x in stara] ]
matrica = []
for i in range(3):
lista = [ red = [i*2 + j + 1 for j in range(2)]
x matrica.append(red)
for red in matrica
for x in red
]
matrica = [
[i*2 + j + 1 for j in range(2)]
for i in range(3)
# [1, 2, 3, 4, 5, 6]
]
stepen = int(input())
koeficijenti = [float(k) for k in input().split()]
xmin, xmax, dx = [float(x) for x in input().split(", ")]
x = xmin
while x <= xmax:
p = 0
for i, k in enumerate(koeficijenti):
p += k * x**(stepen - i)
print("x = {} -> P(x) = {}".format(x, p))
x += dx
Formatiranje brojeva:
print("{:10d}".format(42)) # 42
print("{:010b}".format(42)) # 0000101010
print("{:10.2f}".format(-3.141592653589793)) # -3.14
print('{:=+10.5f}'.format(3.141592653589793)) # + 3.14159
Formatiranje teksta:
print("{:<20.5s}".format("levo?")) # levo?
print("{:.>9s}".format("desno!")) # ...desno!
print("{:-^9.3s}".format("sredina")) # ---sre---
s t u d e n t . f a x . r s
-14 -13 -12 -11 -10 -9 -8 -7 -6 -5 -4 -3 -2 -1
def prepareSentence(s):
return s.lower().strip().replace(" ", "")
def isPalindrome1(s):
prepared = prepareSentence(s)
for i in range(len(prepared) // 2):
if prepared[i] != prepared[-i-1]:
return False
return True
ETF Beograd::Programiranje 1 17/38
4. zadatak (2/2)
def isPalindrome2(s):
prepared = prepareSentence(s)
for p, r in zip(prepared, reversed(prepared)):
if p != r:
return False
return True
def isPalindrome3(s):
prepared = prepareSentence(s)
reverse = prepared[::-1]
return prepared == reverse
a, b = input("A, B: ").split()
a, b = min_max(a, b)
asc_desc = input("R | O: ")
if asc_desc in ("o", "O"):
a, b = b, a
print("{}: {}, {}".format(asc_desc, a, b))
def pakovanje(*torka):
for element in torka:
print(element, end=' ')
print()
pakovanje(3, 2, 4, 5, 1) # 3 2 4 5 1
lista = [1, 2, 3, 4]
raspakivanje(*lista) # 1 2 3 4
print(*lista) # 1 2 3 4