экспериментировал с обработкой строк и заметил одну путаницу.
В следующем коде два одинаковых строковых литерала ведут себя по-разному в зависимости от того, где они используются:
s1 = "harsh"
s2 = "harsh"
print(s1 is s2) # True (expected: Python interns identical literals)
Но когда я пробую что-то подобное внутри цикла с конкатенацией строк:
values = []
for i in range(3):
x = "harsh" + ""
values.append(x)
print(all(v is values[0] for v in values))
Это печатает:
False
Подробнее здесь: https://stackoverflow.com/questions/798 ... odified-in
Мобильная версия