Python материалы 7-8

x=(0,11,"два",33,44,"пять",66,True,88)
print(x,type(x)) #кортеж. Менять нельзя. константа

print()

x="qwerty"
y=tuple(x)#конвертация типа в tuple
print(y,type(y))

print()

#словарь - ассоциативный массив
x={"cat":5,"dog":3,"bat":8}
print(x,type(x)) 
print(x["dog"])#обращение к элементу

print()

#создаём словарь
x=dict(fox=3,cow=5,rat=7)
print(x,type(x)) 

print()

# создаём словарь иначе
x=dict.fromkeys(["milk","bread","potato"],2)
print(x,type(x)) 
x=dict.fromkeys(["milk","bread","potato"],[3,4,1])#неудача :-(
print(x,type(x)) 
'''
Множества - это отдельная крупная тема, имеющая отношение к информатике и сферам Эйлера. Тут про них сказано кратко.
'''

x=set("abcde")#создание при помощи конвертации
print(x,type(x)) #лотерея (нет индексации) (перезапусти программу! :-))
 #x=set("a","b","c") так не получится :-(
print()

x=set("aaabcde")
print(x)#нет дубликатов
print(x)# в рамках 1 запуска программы,
print(x)# множество не будет меняться

print()

x={1,2,3,4,5,6}#нормальное создание
print(x,type(x))
x={"a","b","c","d","e"}#нормальное создание
print(x,type(x))#кстати, кэш нарушает лотерейность. не юзай это как рандом :-)

print()
x={"a","b","c","d"}
print("до    ",x)
x.add("z")
print("после ",x)

print()

#создание замороженного множества. Это как кортеж в мире множеств
x=frozenset("abcde") 
#x.add("z") НЕ ПОЛУЧИТСЯ!
print(x,type(x))