notes/python/python_notes.md

2.2 KiB

top

Python. Заметки на полях

Официальная документация


Базовые понятия

Ansible playbook


part1

Базовые понятия

вверх

Интрерпретируемый язык

Chapter1

List comprehension

Представление списков, списковые включения
https://docs.python.org/3/tutorial/datastructures.html#list-comprehensions

list_square = [x ** 2 for x in range(5)]
print(list_square)

[0, 1, 4, 9, 16]
vlans = [f'vlan {num}' for num in range(10, 16)]
print(vlans)

['vlan 10', 'vlan 11', 'vlan 12', 'vlan 13', 'vlan 14', 'vlan 15']
prices = [98, 123, 13, 45, 67, 43, 87]

less = [x for x in prices if x < 100]
print(less)

[98, 13, 45, 67, 43, 87]
vlans = [100, 110, 150, 200]
names = ['mngmt', 'voice', 'video', 'dmz']

result = ['vlan {}\n name {}'.format(vlan, name) for vlan, name in zip(vlans, names)]

print(result)

['vlan 100\n name mngmt', 'vlan 110\n name voice', 'vlan 150\n name video', 'vlan 200\n name dmz']
users = [{'name': 'Иван', 'age': 29},
         {'name': 'Андрей', 'age': 31},
         {'name': 'Настя', 'age': 22},
         {'name': 'Артём', 'age': 40}]

users_list = [user['name'] for user in users if user['age'] > 30]
print(users_list)

['Андрей', 'Артём']
vlans = [[10, 21, 35], [101, 115, 150], [111, 40, 50]]

result = [vlan for vlan_list in vlans for vlan in vlan_list]
print(result)

[10, 21, 35, 101, 115, 150, 111, 40, 50]

вверх


lambda

list_square = [x ** 2 for x in range(5)]
print(list_square)

[0, 1, 4, 9, 16]

вверх