ответвлено от main/python-labs
report: дополнен до пункта 8.1
Этот коммит содержится в:
268
TEMA2/report.md
268
TEMA2/report.md
@@ -216,7 +216,7 @@ zip_list
|
||||
|
||||
## 6-7. Типы объектов.
|
||||
|
||||
### 6 Проверка влияния больших и маленьких букв в имени переменных:
|
||||
### 6. Проверка влияния больших и маленьких букв в имени переменных:
|
||||
|
||||
```py
|
||||
Gg1=45
|
||||
@@ -225,7 +225,7 @@ gg1
|
||||
Gg1
|
||||
45
|
||||
```
|
||||
### 7 Изучение базовых типов объектов:
|
||||
### 7. Изучение базовых типов объектов:
|
||||
|
||||
int — целые числа (положительные, отрицательные или нуль).
|
||||
float — числа с плавающей точкой (дробные числа).
|
||||
@@ -293,6 +293,270 @@ type(cc2)
|
||||
|
||||
#### 7.3 Строка символом:
|
||||
|
||||
Строки выделяются как и апострофами, так и двойными кавычками, продемонстрируем:
|
||||
|
||||
```py
|
||||
ss1='Это - строка символов'
|
||||
ss1="Это - строка символов"
|
||||
```
|
||||
|
||||
##### Экранированные последовательности:
|
||||
```py
|
||||
ss1a="Это - \" строка символов \", \n \t выводимая на двух строках"
|
||||
print(ss1a)
|
||||
```
|
||||
|
||||
Создадим строку по шаблону:
|
||||
|
||||
```py
|
||||
ss1b= 'Меня зовут: \n Ефремов С.И.'
|
||||
print(ss1b)
|
||||
Меня зовут:
|
||||
Ефремов С.И.
|
||||
```
|
||||
|
||||
Создадим строку со значением объекта при помощи тройных кавычек:
|
||||
|
||||
```py
|
||||
mnogo="""Нетрудно заметить , что в результате операции
|
||||
над числами разных типов получается число,
|
||||
имеющее более сложный тип из тех, которые участвуют в операции."""
|
||||
|
||||
print(mnogo)
|
||||
Нетрудно заметить , что в результате операции
|
||||
над числами разных типов получается число,
|
||||
имеющее более сложный тип из тех, которые участвуют в операции.
|
||||
```
|
||||
|
||||
```py
|
||||
|
||||
ss1[0]
|
||||
'Э'
|
||||
ss1[8]
|
||||
'р'
|
||||
ss1[-2]
|
||||
'о'
|
||||
ss1[0]
|
||||
'Э'
|
||||
ss1[8]
|
||||
'р'
|
||||
ss1[-2]
|
||||
'о'
|
||||
ss1[6:9]
|
||||
'стр'
|
||||
ss1[13:]
|
||||
'символов'
|
||||
ss1[:13]
|
||||
'Это - строка '
|
||||
ss1[5:-8]
|
||||
' строка '
|
||||
ss1[3:17:2]
|
||||
' тоасм'
|
||||
```
|
||||
Важно заметить, что цифра '2' здесь отвечает за шаг.
|
||||
|
||||
```py
|
||||
ss1[17:3:-2]
|
||||
'омсаот '
|
||||
```
|
||||
Здесь, подобно примеру выше, мы перечислили элементы с индексами от 3 до 17, но в обратном порядке (с положительным шагом перечисление элементов в обратную сторону работать не будет).
|
||||
|
||||
```py
|
||||
ss1[-4:3:-2]
|
||||
'омсаот '
|
||||
```
|
||||
Изменив '17' на '-4' мы получим тот же результат, ведь два этих индекса соответствуют одному и тому же элементу строки.
|
||||
|
||||
```py
|
||||
ss1=ss1[:4]+'='+ss1[5:]
|
||||
ss1
|
||||
'Это = строка символов'
|
||||
```
|
||||
Таким образом, мы переопределили элемент под индексом 4.
|
||||
|
||||
```py
|
||||
|
||||
ss1b1 = ss1b[:3]; print(ss1b1)
|
||||
Мен
|
||||
|
||||
ss1b2 = ss1b[:10]+' - \n'+ss1bpetr
|
||||
print(ss1b2)
|
||||
Меня зовут -
|
||||
Петр Мамонов
|
||||
```
|
||||
|
||||
## 8. Списки, кортежи, словари и множества.
|
||||
|
||||
```py
|
||||
|
||||
help(list)
|
||||
Help on class list in module builtins:
|
||||
|
||||
class list(object)
|
||||
| list(iterable=(), /)
|
||||
|
|
||||
| Built-in mutable sequence.
|
||||
|
|
||||
| If no argument is given, the constructor creates a new empty list.
|
||||
| The argument must be an iterable if specified.
|
||||
|
||||
|
||||
help(tuple)
|
||||
Help on class tuple in module builtins:
|
||||
|
||||
class tuple(object)
|
||||
| tuple(iterable=(), /)
|
||||
|
|
||||
| Built-in immutable sequence.
|
||||
|
|
||||
| If no argument is given, the constructor returns an empty tuple.
|
||||
| If iterable is specified the tuple is initialized from iterable's items.
|
||||
|
|
||||
| If the argument is a tuple, the return value is the same object.
|
||||
|
|
||||
| Built-in subclasses:
|
||||
| asyncgen_hooks
|
||||
| UnraisableHookArgs
|
||||
|
||||
|
||||
help(dict)
|
||||
Help on class dict in module builtins:
|
||||
|
||||
class dict(object)
|
||||
| dict() -> new empty dictionary
|
||||
| dict(mapping) -> new dictionary initialized from a mapping object's
|
||||
| (key, value) pairs
|
||||
| dict(iterable) -> new dictionary initialized as if via:
|
||||
| d = {}
|
||||
| for k, v in iterable:
|
||||
| d[k] = v
|
||||
| dict(**kwargs) -> new dictionary initialized with the name=value pairs
|
||||
| in the keyword argument list. For example: dict(one=1, two=2)
|
||||
|
||||
help(set)
|
||||
Help on class set in module builtins:
|
||||
|
||||
class set(object)
|
||||
| set(iterable=(), /)
|
||||
|
|
||||
| Build an unordered collection of unique elements.
|
||||
|
||||
```
|
||||
### 8.1 Работа со списками.
|
||||
|
||||
```py
|
||||
spis1=[111,'Spisok',5-9j]
|
||||
spis1
|
||||
[111, 'Spisok', (5-9j)]
|
||||
```
|
||||
Список может содержать в себе элементы разных типов.
|
||||
|
||||
```py
|
||||
stup=[0,0,1,1,1,1,1,1,1]
|
||||
stup
|
||||
[0, 0, 1, 1, 1, 1, 1, 1, 1]
|
||||
|
||||
spis = [1,2,3,4,
|
||||
5,6,7,
|
||||
8,9,10]
|
||||
spis
|
||||
[1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
|
||||
```
|
||||
Ввод можно производить в разных строках, пока не будет введена квадратная скобка.
|
||||
|
||||
```py
|
||||
|
||||
spis1[-1]
|
||||
(5-9j)
|
||||
stup[-8::2]
|
||||
[0, 1, 1, 1]
|
||||
```
|
||||
'-8' - есть элемент под индексом 1 в исходном списке, между :: ничего нет, значит срез произойдёт до самого последнего элемента, а '2' - есть шаг пересчёта элементов.
|
||||
|
||||
```py
|
||||
spis1[1]='Список'
|
||||
spis1
|
||||
[111, 'Список', (5-9j)]
|
||||
len(spis1)
|
||||
3
|
||||
```
|
||||
|
||||
```py
|
||||
spis1.append('компиш')
|
||||
spis1
|
||||
[111, 'Список', (5-9j), 'компиш']
|
||||
spis1.append(ss1b)
|
||||
spis1
|
||||
[111, 'Spisok', (5-9j), 'компиш', 'Меня зовут: \n Ефремов С.И.']
|
||||
spis1.pop(1)
|
||||
'Spisok'
|
||||
spis1
|
||||
[111, (5-9j), 'компиш', 'Меня зовут: \n Ефремов С.И.']
|
||||
```
|
||||
|
||||
С помощью '.append' можно добавить какой-либо элемент в список, а '.pop' - удалить.
|
||||
|
||||
```py
|
||||
spis1.insert(1, 'пицца') вставит второй аргумент под номер индекса элемента.
|
||||
spis1
|
||||
[111, 'пицца', (5-9j), 'компиш', 'Меня зовут: \n Ефремов С.И.']
|
||||
|
||||
spis1.remove('пицца') - удалит тот элемент, который полностью соответствует указанному в команде аргументу.
|
||||
spis1
|
||||
[111, (5-9j), 'компиш', 'Меня зовут: \n Ефремов С.И.']
|
||||
|
||||
spis1.extend('5-9') - добавит каждый элемент аргумента в конце списка.
|
||||
spis1
|
||||
[111, (5-9j), 'компиш', 'Меня зовут: \n Ефремов С.И.', 'к', 'о', 'м', 'п', 'и', 'ш', '5', '-', '9']
|
||||
|
||||
spis1.clear() - удаляет все элементы из списка.
|
||||
spis1
|
||||
[]
|
||||
|
||||
spis1
|
||||
[5, 3, 2, 1, 7, 6, 9]
|
||||
spis1.sort() - сортировка списка как и по числам*
|
||||
spis1
|
||||
[1, 2, 3, 5, 6, 7, 9]
|
||||
spisbukva = ['b', 'a', 'c', 'g', 't']
|
||||
spisbukva.sort() - *так и по алфавиту
|
||||
spisbukva
|
||||
['a', 'b', 'c', 'g', 't']
|
||||
|
||||
spisbukva.reverse() - перемешивает элементы в обратном порядке
|
||||
spisbukva
|
||||
['t', 'g', 'c', 'b', 'a']
|
||||
|
||||
spis1
|
||||
[1, 2, 3, 5, 6, 7, 9]
|
||||
spis111 = spis1.copy() - копирует список.
|
||||
spis111
|
||||
[1, 2, 3, 5, 6, 7, 9]
|
||||
|
||||
spis1
|
||||
[1, 2, 3, 5, 6, 7, 9]
|
||||
spis1.count(5) - считает то, сколько раз элемент из аргумента появляется в списке.
|
||||
1
|
||||
|
||||
spis1.index(9) - возвращает индекс элемента, совпадающего по значению с аргументом.
|
||||
6
|
||||
```
|
||||
|
||||
```py
|
||||
spis2=[spis1, [4,5,6,7]] - элементы переменной - два списка
|
||||
spis2
|
||||
[[1, 2, 3, 5, 6, 7, 9], [4, 5, 6, 7]]
|
||||
|
||||
spis2[0][1] - обращение ко второму элементу первого списка
|
||||
2
|
||||
|
||||
spis2[0][1]=78 - замена значения того же элемента на другое
|
||||
spis2
|
||||
[[1, 78, 3, 5, 6, 7, 9], [4, 5, 6, 7]]
|
||||
|
||||
spis1
|
||||
[1, 78, 3, 5, 6, 7, 9] - был видоизменен, ведь является элементом другого списка, к которому мы обратились и изменили соответственно.
|
||||
```
|
||||
|
||||
|
||||
|
||||
|
||||
Ссылка в новой задаче
Block a user