Za prvi občutek so tule zbrane rešitve vseh šestih nalog. Komentirane rešitve so na drugi strani.
def jeZenska(emso):
return emso[9] >= '5'
def stevilo_srecnezev(razpored):
srecnih = 0
n = len(razpored)
for i in range(n):
srecnih += jeZenska(razpored[i-1]) != jeZenska(razpored(i)) != jeZenska(razpored[(i+1)%n])
return srecnih
def razporedi(gostje):
zenske = [gost for gost in gostje if jeZenska(gost)]
moski = [gost for gost in gostje if not jeZenska(gost)]
razpored = []
for par in zip(moski, zenske):
razpored += par
parov = len(razpored)/2
razpored += moski[parov:] + zenske[parov:]
return razpored
def enaka_razporeda(razpored1, razpored2):
for i in range(len(razpored2)):
if razpored2 == razpored1[i:]+razpored1[:i]:
return True
return not razpored1 and not razpored2
def read_hosts():
d = {}
for line in file("hosts"):
if "#" in line:
line = line[:line.find("#")]
line = line.strip()
if line:
name, ip = line.split()
d[name] = ip
return d
import re
def find_URLs(s):
return re.findall(r"\bhttps?://\S*", s)