You are currently viewing Python | Набор 4 (Словарь, Ключевые слова на Python)

Python | Набор 4 (Словарь, Ключевые слова на Python)

В предыдущих двух статьях (Набор 2 и Набор 3) мы обсуждали основы python. В этой статье мы узнаем больше о python и почувствуем силу python.

Словарь на языке Python 

В python словарь похож на хэш или карты на других языках. Он состоит из пар ключ-значение. Значение может быть доступно с помощью уникального ключа в словаре.

# Create a new dictionary
d = dict() # or d = {}

# Add a key - value pairs to dictionary
d['xyz'] = 123
d['abc'] = 345

# print the whole dictionary
print (d)

# print only the keys
print (d.keys())

# print only values
print (d.values())

# iterate over dictionary
for i in d :
	print ("%s %d" %(i, d[i]))

# another method of iteration
for index, key in enumerate(d):
	print (index, key, d[key])

# check if key exist
print ('xyz' in d)

# delete the key-value pair
del d['xyz']

# check again
print ("xyz" in d)

Выход:

{'xyz': 123, 'abc': 345}
['xyz', 'abc']
[123, 345]
xyz 123
abc 345
0 xyz 123
1 abc 345
True
False

перерыв, продолжение, переход на Python

  • перерыв: выводит вас из текущего цикла.
  • продолжить: завершает текущую итерацию цикла и переходит к следующей итерации.
  • проходить: Инструкция pass ничего не делает. Его можно использовать, когда требуется заявление. синтаксически, но программа не требует никаких действий.

Он обычно используется для создания минимальных классов.

# Function to illustrate break in loop
def breakTest(arr):
	for i in arr:
		if i == 5:
			break
		print (i)
	# For new line
	print("")


# Function to illustrate continue in loop
def continueTest(arr):
	for i in arr:
		if i == 5:
			continue
		print (i)

	# For new line
	print("")

# Function to illustrate pass
def passTest(arr):
		pass

	
# Driver program to test above functions

# Array to be used for above functions:
arr = [1, 3 , 4, 5, 6 , 7]

# Illustrate break
print ("Break method output")
breakTest(arr)

# Illustrate continue
print ("Continue method output")
continueTest(arr)

# Illustrate pass- Does nothing
passTest(arr)

Выход:

Break method output 1 3 4
Continue method output 1 3 4 6 7

map (карта), filter (фильтр), lambda (лямбда)

  • map (Карта): Функция map() применяет функцию к каждому члену iterable и возвращает результат. Если аргументов несколько, функция map() возвращает список, состоящий из кортежей, содержащих соответствующие элементы из всех итераций.
  • filter (Фильтр): Он принимает функцию, возвращающую значение True или False, и применяет ее к последовательности, возвращая список только тех членов последовательности, для которых функция вернула значение True.
  • lambda (лямбда): Python предоставляет возможность создавать простую (внутренние операторы не разрешены) анонимную встроенную функцию, называемую лямбда-функцией. Используя лямбду и карту, вы можете иметь два цикла for в одной строке.
# python program to test map, filter and lambda
items = [1, 2, 3, 4, 5]

#Using map function to map the lambda operation on items
cubes = list(map(lambda x: x**3, items))
print(cubes)

# first parentheses contains a lambda form, that is
# a squaring function and second parentheses represents
# calling lambda
print( (lambda x: x**2)(5))

# Make function of two arguments that return their product
print ((lambda x, y: x*y)(3, 4))

#Using filter function to filter all
# numbers less than 5 from a list
number_list = range(-10, 10)
less_than_five = list(filter(lambda x: x < 5, number_list))
print(less_than_five)

Выход:

[1, 8, 27, 64, 125]
25
12
[-10, -9, -8, -7, -6, -5, -4, -3, -2, -1, 0, 1, 2, 3, 4]

Для большей ясности в отношении карты, фильтра и лямбды вы можете посмотреть на приведенный ниже пример:

#code without using map, filter and lambda

# Find the number which are odd in the list
# and multiply them by 5 and create a new list

# Declare a new list
x = [2, 3, 4, 5, 6]

# Empty list for answer
y = []

# Perform the operations and print the answer
for v in x:
	if v % 2:
		y += [v*5]
print (y)

Выход:

[15, 25]