
Python - posunuté hodnoty v setu
Ahoj,
Náhodou jsem narazil na nějakou chybu, kdy jsou v setu po vygenerování posunuté hodnoty - viz níže. Kde je chyba?
print([x for x in range(1,4)]) # [1, 2, 3]
print({x for x in range(1,4)}) # {1, 2, 3}
print([x for x in range(1,5)]) # [1, 2, 3, 4]
print({x for x in range(1,5)}) # {1, 2, 3, 4}
print([x for x in range(1,6)]) # [1, 2, 3, 4, 5]
print({x for x in range(1,6)}) # {1, 2, 3, 4, 5}
print("---")
print([2*x for x in range(1,4)]) # [2, 4, 6]
print({2*x for x in range(1,4)}) # {2, 4, 6}
print([2*x for x in range(1,5)]) # [2, 4, 6, 8]
print({2*x for x in range(1,5)}) # {8, 2, 4, 6} - ???
print([2*x for x in range(1,6)]) # [2, 4, 6, 8, 10]
print({2*x for x in range(1,6)}) # {2, 4, 6, 8, 10}
print("---")
print([3*x for x in range(1,4)]) # [3, 6, 9]
print({3*x for x in range(1,4)}) # {9, 3, 6} - ???
print([3*x for x in range(1,5)]) # [3, 6, 9, 12]
print({3*x for x in range(1,5)}) # {9, 3, 12, 6} - ???
print([3*x for x in range(1,6)]) # [3, 6, 9, 12, 15]
print({3*x for x in range(1,6)}) # {3, 6, 9, 12, 15}
Díky.
S pythonem teprve začínám, takže si zkouším různé věci. Narazil jsem právě na jeden příklad, kdy se to vypsalo posunuté o jeden item a já netuším, proč se to tak děje, tak jsem to zkusil ještě s pár hodnotama a zaujalo mě, že se to někdy vypíše postupně a někdy posunutě.
To právě nechápu - proč se to děje jen někdy?
Díky.
To není posunuté, ale neuspořádané :)
Ještě objevíš věcí, třeba
Hustý! Je pro to nějaké jednoduché vysvětlení, proč ten prostřední není 0.3? :)
Tady je o tom taky nějaké povídání.
Zajímavé, díky oběma za odpovědi. :)