Языки программирования развиваются каждый день и облегчают жизнь программистам. Одним из них является Python. Недавний опрос разработчиков показал, что Python является вторым любимым языком программирования после JavaScript. Это связано с тем, что программисты получают хорошие возможности для карьерного роста, если выбирают Python в качестве предпочитаемого языка. Более того, синтаксис Python сравнительно легко запомнить, чем C или C++. В последние несколько месяцев спрос на разработчиков Python растет день ото дня.
Если вы программист Python или пытаетесь освоить его, этот блог специально для вас. Здесь я перечислю некоторые моменты, которые помогут программистам легко решать повседневные задачи.
Теперь давайте рассмотрим проблемы, с которыми может столкнуться программист:
1. Найдите элемент с наибольшей частотой
Здесь у нас будет список со случайными элементами. Некоторые элементы будут повторяться, и нам нужно найти элемент с наибольшей частотой.
new_list =
[a,b,a,d,e,g,g,a,c,f,k,t,u,z,x,a]
print("Most frequent element:", max(set(new_list),key= new_list.count))
Здесь на выходе будет элемент «a», поскольку он повторяется 4 раза.
2. Поиск подстрок из списка строк.
В приведенном ниже коде у нас есть список строк, и мы собираемся искать их с помощью небольшого ключевого слова, которое у них есть. Как и в методе 1, когда мы искали мета, мы получили Марка Цукерберга на выходе, поскольку они оба являются частью одной строки. мета это просто подстрока. То же самое делается в методе 2, но в другом стиле.
data =
[
"Python, Programming Language",
"Meta, Mark Zuckerberg",
"Sebastian Vettel, F1 racer",
"Alexa, Amazon"
]
# Method 1
name =
"Meta"
for
datain
data:
if
data.find(name) >=
0:
print(data)
# Method 2
name =
"Vettel"
for
datain
data:
if
name in
data:
print(data)
3. Объединение словарей
Ниже приведены два словаря с определенными элементами в них. Здесь мы собираемся объединить их и показать нам результат. Первый метод заключается в том, что словари распаковываются в результат, который показывает объединенный вывод. Во втором методе мы копируем первый словарь в результате, а затем обновляем его вторым словарем. В третьем методе мы использовали простой метод, который называется понимание словаря.
dict_no1 =
{'h'
: 1, 'e'
: 2, 'l'
: 3, 'l' : 4, 'o' : 5}
dict_no2 =
{'s'
: 6, 'i'
: 7, 'r'
: 8}
# Method 1
result =
{ **dict_no1, **dict_no2}
print(result)
# Method 2
result =
dict_no1.copy()
result.update(dict_no2)
print(result)
# Method 3
result =
{key: value for
d in
(dict_no1, dict_no2) for
key, value in
d.items()}
print(result)
4. Работа с файлами
Обработка файлов используется в Python, когда пользователю необходимо прочитать большие значения, разделенные запятыми. В приведенном ниже коде есть файл с именем «abc», в котором мы выполняем различные функции, такие как открытие файла, чтение файла, чтение одной строки, закрытие файла и запись в файл.
# Open a file f = open('abc.txt') # Read from a file f = open('abc.txt', 'r') # To read the whole file print(f.read()) # To read single line print(f.readline()) # Write to a file f = open('abc.txt', 'w') f.write('Writing into a file \n') # Closing a file f.close()
5. Сортировка списка словарей
В приведенном ниже коде у нас есть словарь со списками внутри него, который содержит информацию о некоторых людях. Мы будем сортировать список на основе их «id», вы можете сделать это для любого, что вам нужно. Мы используем функциональность sort() или sorted() для выполнения этой задачи.
person = [ { 'name' : 'andrew', 'age' : 25, 'id' : 72365 }, { 'name' : 'bill', 'age' : 34, 'id' : 55443 }, { 'name' : 'cassie', 'age' : 22, 'id' : 63257 } ] # Method 1 person.sort(key=lambda item: item.get("id")) print(person) # Method 2 person = sorted(person, key=lambda item: item.get("id")) print(person)
6. Расчет времени выполнения
Приведенный ниже код рассчитает время выполнения. Мы использовали библиотеку времени. Мы измеряем время выполнения нашего кода, который будет печатать все четные числа до 10, а затем отмечаем время, необходимое для выполнения.
import time start = time.time() # printing all even numbers till 10 for i in range(10): if i % 2 == 0: print(i, end = “ “) end = time.time() time_taken = end — start print(“\nTime taken: “, time_taken)
7. Обработка ошибок
При обработке ошибок мы используем теорему try-catch, где происходит внезапная остановка, если одна из возможностей не совпадает. В приведенном ниже коде мы будем делить два числа, поэтому, если 2-е число равно нулю, этот код выдаст ошибку вместо ее выполнения и предупреждения пользователя.
no1, no2 = 4,0 try: print(no1 / no2) except ZeroDivisionError: print("Division by Zero is not possible!") finally: print("Finally block.")
8. Форматирование строк
При форматировании строк мы изменяем строки, для этого есть несколько способов. В приведенном ниже коде упоминаются некоторые из них. В первом методе используется базовая конкатенация, которая просто складывает строки вместе. Во втором методе мы используем f-строки, в которых имя переменной записывается в фигурных скобках и изменяется во время выполнения. В третьем методе мы используем функцию format(), которая принимает строку или переменную для вставки в строку в качестве аргумента и помещает ее везде, где видит фигурную скобку. В последнем методе мы используем «%s», который показывает, что это строка.
language = "C++" # Method 1 print(language + " is my favourite programming language.") # Method 2 print(f"I code in {language}") # Method 3 print("I like the {} programming language.".format(language)) # Method 4 print("%s is very easy to learn." % (language))
9. Понимание списка с помощью If-else.
Понимание списков очень удобно для пользователей, поскольку помогает сделать код более сложным и читабельным. В приведенном ниже коде мы находим кратные 8, а затем кратные 2 и 4, используя условия if-else.
my_list = ['Multiple of 8' if i % 8== 0 else 'Multiple of 2' if i % 2 == 0 else 'Multiple of 4' if i % 4== 0 else i for i in range(1, 20)] print(my_list)
10. Сведение списка.
Чтобы сгладить список, содержащий несколько списков, мы можем использовать функциональные возможности append() и функциональные возможности extend(). Единственная разница между ними заключается в том, что append() использует одну переменную для добавления к списку, так что длина списка увеличивается на единицу, тогда как extends() добавляет все элементы в списке, переданном в качестве аргумента, один за другим в конец исходный список.
mylist = [10,12,36,[41,59,63],[77],81,93] flat = [] for i in mylist: if isinstance(i, list): flat.extend(i) else: flat.append(i) print(flat)
Итак, это были некоторые проблемы Python, с которыми программисты сталкиваются почти каждый день. Надеюсь, вам понравился блог!