4.6 KiB
4.6 KiB
Lists []
- Пример листа
list = [1, 'num', 3.33]
Можно создавать эл-ты разных ТД - Длину можно узнать
len()
(выдаст именно ко-во эл-во, не индексы) - из списка подряд цифры через пробел
L = [1, 2, 3, 4, 5]
print(*L)
- Выбрать по индексу
list[index]
-> выдаст эл-т - Вырезать по индексу
list[:2]
-> выдаст все выбранные - МОЖНО менять эл-ты в списке
list[index]='hi'
- Добавить эл-т в список
.append()
,.insert()
:
list.append('new item') # добавить эл-т в конце списки
list.insert(index,'new item') # доб эл-т в нужное место списка
- убрать эл-т из списка
.pop()
,.remove()
:
list.pop() # удаляет последний эл-т в списке
list.pop(значение) # удаляет по значению - НЕ ВОЗВРАЩАЕТ
deleted = list.pop() = [...]
deleted = list.remove(значение) - удаляет первое попавшееся значение
- Сортировка
.sort()
,.reverse()
:
list.sort() - НЕ ВОЗВРАЩАЕТ / меняет первоначальную переменную
list.reverse() - с большего к меньшему
Цикл for
- Посл-ти: строки, списки, словари, мн-ва и др. - для перебора используется цикл
list = [1,2,3,4,5]
for number(любое значение) in list:
print(number) -> 1
2
3
4
5
print('Hi') #выдаст столько раз сколько эл-тов в списке
- Для подсчета суммы значений в списке
sum = 0
for num in list:
sum = sum + num
print (sum) -> 10
Nested Loops - вложенные циклы
- треугольник из смайликов
\U0001f600
for num in range(10):
count=0
emoticons = ''
while count <=num:
emoticons+='\U0001f600'
count+=1
print (emoticons) -> 😀
😀😀
😀😀😀
😀😀😀😀
😀😀😀😀😀
😀😀😀😀😀😀
😀😀😀😀😀😀😀
😀😀😀😀😀😀😀😀
😀😀😀😀😀😀😀😀😀
😀😀😀😀😀😀😀😀😀😀
- то же, но без
while
for num in range(10):
emoticons = ''
for count in range(num+1):
emoticons+='\U0001f600'
print(emoticons)
Мультприкация строк
for num in range(1,11): # не с -, т.к. 0 = 0, пропуск -> 1) 1*1= 1 \ 2) 1*2= 2 \ 3) 1*3= 3
print('\U0001f600'*num) # при умножении строки на число мы получаем строку несколько раз, а for сделал это range (1,11)(т.е. 10) раз
==
count = 1
while count<11:
print ('\U0001ff00' * count)
count += 1
Nested List
list = [[1,2,3],[4,5,6],[7,8,9]]
print (len(list)) -> 3 # 3 эл-та списка(компоненты) 1) 1,2,3 2) 4,5,6....
print (len(list [1])) -> 3 # (эл-ты внутри 1 вложенного списка (4,5,6))
- Чтобы обратиться к эл-ту списка внутри списка:
print(list[1][1]) -> 5
- операции с вложенными списками
for inner_list in list:
print (inner_list)-> [1,2,3]
[4,5,6]
[7,8,9]
- операции с эл-тами вложенных списков
for inner_list in list:
for number in inner_list:
print (inner_list)-> 1
2
3
4
...
ИЛИ
[[print (number) for number in inner_list] for inner_list in list] # от меньшего (эл-ты влож списков) к большему (к самим влож спискам)
Особенности
- Для списков или картежей можно использовать
x.count()
:text = [1,2,3,1,2] print(text.count(1)) -> 2 # Элемент 1 встречается 2 раза