range
. Это важно, потому что вызов range(1000000)
не загонит в память список из миллиона элементов, а лишь создаст компактный объект range(0, 1000000)
. При этом по нему можно безболезненно проитерировать как если бы это был список for player in players:
if player["id"] == user_id:
return player
else:
return False
while i < len(txt_split) and txt_split[i][0] == "#":
tags.append(txt_split[i].lower())
i+=1
while i < len(txt_split):
if txt_split[i].startswith('#'):
tags.append(txt_split[i].lower())
i+=1
txt_split =txt.strip().split(" ")
i = 0
tags = []
while i < len(txt_split) and txt_split[i][0] == "#":
tags.append(txt_split[i].lower())
i+=1
tags = [word.lower() for word in txt.strip().split() if word.startswith('#')]
if c == True
, а if c
;if b == None
а if b is None
;a == b
), кроме случаев, когда это именованные аргументы (func(a=1, b=2)
);
?