2023-10-12 21:32:13 +03:00
|
|
|
|
## Lists []
|
|
|
|
|
- Пример листа `list = [1, 'num', 3.33]` *Можно создавать эл-ты разных ТД*
|
|
|
|
|
- Длину можно узнать `len()` (выдаст именно ко-во эл-во, не индексы)
|
2023-10-23 15:34:41 +03:00
|
|
|
|
- из списка подряд цифры через пробел
|
|
|
|
|
```python
|
|
|
|
|
L = [1, 2, 3, 4, 5]
|
|
|
|
|
print(*L)
|
|
|
|
|
```
|
2023-10-12 21:32:13 +03:00
|
|
|
|
- Выбрать по индексу `list[index]` -> выдаст эл-т
|
|
|
|
|
- Вырезать по индексу `list[:2]` -> выдаст все выбранные
|
|
|
|
|
- __МОЖНО__ менять эл-ты в списке `list[index]='hi'`
|
|
|
|
|
- Добавить эл-т в список __`.append()`__, __`.insert()`__:
|
|
|
|
|
```python
|
|
|
|
|
list.append('new item') # добавить эл-т в конце списки
|
|
|
|
|
list.insert(index,'new item') # доб эл-т в нужное место списка
|
|
|
|
|
```
|
|
|
|
|
- убрать эл-т из списка __`.pop()`__, __`.remove()`__:
|
|
|
|
|
```python
|
|
|
|
|
list.pop() # удаляет последний эл-т в списке
|
|
|
|
|
|
|
|
|
|
list.pop(значение) # удаляет по значению - НЕ ВОЗВРАЩАЕТ
|
|
|
|
|
|
|
|
|
|
deleted = list.pop() = [...]
|
|
|
|
|
|
|
|
|
|
deleted = list.remove(значение) - удаляет первое попавшееся значение
|
|
|
|
|
```
|
|
|
|
|
- Сортировка __`.sort()`__, __`.reverse()`__:
|
|
|
|
|
```python
|
|
|
|
|
list.sort() - НЕ ВОЗВРАЩАЕТ / меняет первоначальную переменную
|
|
|
|
|
list.reverse() - с большего к меньшему
|
|
|
|
|
```
|
|
|
|
|
## Цикл for
|
|
|
|
|
- Посл-ти: строки, списки, словари, мн-ва и др. - для перебора используется цикл
|
|
|
|
|
```python
|
|
|
|
|
list = [1,2,3,4,5]
|
|
|
|
|
for number(любое значение) in list:
|
|
|
|
|
print(number) -> 1
|
|
|
|
|
2
|
|
|
|
|
3
|
|
|
|
|
4
|
|
|
|
|
5
|
|
|
|
|
print('Hi') #выдаст столько раз сколько эл-тов в списке
|
|
|
|
|
```
|
|
|
|
|
- Для подсчета суммы значений в списке
|
|
|
|
|
```python
|
|
|
|
|
sum = 0
|
|
|
|
|
for num in list:
|
|
|
|
|
sum = sum + num
|
|
|
|
|
print (sum) -> 10
|
2023-10-13 13:12:24 +03:00
|
|
|
|
```
|
|
|
|
|
|
2023-10-23 15:34:41 +03:00
|
|
|
|
## Nested Loops - вложенные циклы
|
|
|
|
|
- треугольник из смайликов `\U0001f600`
|
|
|
|
|
```python
|
|
|
|
|
for num in range(10):
|
|
|
|
|
count=0
|
|
|
|
|
emoticons = ''
|
|
|
|
|
while count <=num:
|
|
|
|
|
emoticons+='\U0001f600'
|
|
|
|
|
count+=1
|
|
|
|
|
print (emoticons) -> 😀
|
|
|
|
|
😀😀
|
|
|
|
|
😀😀😀
|
|
|
|
|
😀😀😀😀
|
|
|
|
|
😀😀😀😀😀
|
|
|
|
|
😀😀😀😀😀😀
|
|
|
|
|
😀😀😀😀😀😀😀
|
|
|
|
|
😀😀😀😀😀😀😀😀
|
|
|
|
|
😀😀😀😀😀😀😀😀😀
|
|
|
|
|
😀😀😀😀😀😀😀😀😀😀
|
|
|
|
|
```
|
|
|
|
|
- то же, но без `while`
|
|
|
|
|
```python
|
|
|
|
|
for num in range(10):
|
|
|
|
|
emoticons = ''
|
|
|
|
|
for count in range(num+1):
|
|
|
|
|
emoticons+='\U0001f600'
|
|
|
|
|
print(emoticons)
|
|
|
|
|
```
|
|
|
|
|
#### Мультприкация строк
|
|
|
|
|
```python
|
|
|
|
|
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) раз
|
|
|
|
|
```
|
2023-10-23 16:12:51 +03:00
|
|
|
|
==
|
|
|
|
|
```python
|
|
|
|
|
count = 1
|
|
|
|
|
while count<11:
|
|
|
|
|
print ('\U0001ff00' * count)
|
|
|
|
|
count += 1
|
|
|
|
|
```
|
|
|
|
|
## Nested List
|
|
|
|
|
```python
|
|
|
|
|
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))
|
|
|
|
|
```
|
|
|
|
|
- Чтобы обратиться к эл-ту списка внутри списка:
|
|
|
|
|
```python
|
|
|
|
|
print(list[1][1]) -> 5
|
|
|
|
|
```
|
|
|
|
|
- операции с вложенными списками
|
|
|
|
|
```python
|
|
|
|
|
for inner_list in list:
|
|
|
|
|
print (inner_list)-> [1,2,3]
|
|
|
|
|
[4,5,6]
|
|
|
|
|
[7,8,9]
|
|
|
|
|
```
|
|
|
|
|
- операции с эл-тами вложенных списков
|
|
|
|
|
```python
|
|
|
|
|
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] # от меньшего (эл-ты влож списков) к большему (к самим влож спискам)
|
|
|
|
|
```
|
|
|
|
|
-
|
2023-10-23 15:34:41 +03:00
|
|
|
|
|