Рубрики
Без рубрики

Основные советы и трюки Python для разработчика Python

Написание сокращенных заявлений в Python Python имеет сокращенные заявления и Shorthan … Теги с Python, Chechsheet.

Python имеет сокращенные заявления и сокращение операторов. Эти вещи помогут вам написать больше логики с меньшим количеством высказываний.

Мы увидим эти доступные сокращенные заявления.

Файл Пример Shorthand.py.

лямбда

Вероятно, каждое тело знает о функциях лямбда. Заявление Lambda полезно написать функции одной строки с именами функции. Это вернет ссылку на функцию, где вы можете назначить ее любую произвольную переменную. Это больше похоже на анонимные функции JavaScript.

foo = lambda a: a+3
foo(3)
6
foo(8)
11

Я назывался лямбда

Вы можете написать лямбда, и вы можете заставить его называть это как самозазывные функции в JavaScript. Давайте посмотрим пример.

(lambda a: a+3)(8)
11
(lambda x: x**x)(3)
27

Список понимания

Понимание списка – это отличная особенность, которую Python имеет. Используя эту функцию, вы можете уменьшить много кода, вы можете уменьшить пространственную сложность кода. Простые для петель можно записать с помощью списка.

Синтаксис:

L = [ Отображение выражения для Элемент в исходный список Если фильтр-выражение Несомненно

Где:

Л Переменная, результат получает назначение

Отображение выражения Выражение, которое выполняется на каждом петле, если только выражение фильтра> в случае, если состояние разрешено как True

Этому списку понимание эквивалентно.

result = []
for element in source-list:
  if filter-expression:
    result.append(mapping-expression)

ПРИМЕР

Давайте посмотрим на примеры понимания списка. Получите четное число из данного диапазона.

  • Обычный код
result = []
for i in range(10):
  if i%2 == 0:
    result.append(i)

print(result)
[0, 2, 4, 6, 8]
  • Список понимания
[i for i in range(10) if i%2==0]
[0, 2, 4, 6, 8]

Окомить понимание

Объявление о дикторе доступно в Python 2.7 и 3.x. Этот синтаксис предоставит вам способ инкапсулировать несколько строк, которые вы используете для создания словарей в одну строку. Это похоже на понимание списка, но мы используем литералы Dict {} вместо [].

Синтаксис:

{ ключ : ценность для Элемент в исходный список Если фильтр-выражение }

Давайте насколько мы используем это на примере.

У меня есть список фруктов, я хочу сделать его словарь, изменив их случай

[«Apple», «Mango», «Orange»]

Я хочу преобразовать все ключи в нижний регистр. Это мы сделаем с использованием понимания.

l = ['MANGO', 'APPLE', 'ORANGE']

d = {}

for i in l:
  d[i.upper()] = 1

{'ORANGE': 1, 'MANGO': 1, 'APPLE': 1}

Используя простое понимание списка.

{i.upper(): 1 for i in l}

Установить понимание

Установка синтаксиса понимания очень похоже на понимание диктоября с небольшим разницей.

Давайте рассмотрим пример обсуждения диктования. Используя следующее утверждение, которое вы генерируете набор

{i.upper() for i in l}

Где мы не указали ценность, как мы делаем в понимании на дикторе

Выражение генератора

Вы могли бы знать о генераторах. Любая функция, которая содержит выпускную ставку, называется генератором. Генератор дает утечку, где мы можем вызвать следующий метод, чтобы получить следующий элемент в последовательности. Python получил краткую нотацию для этих генераторов, таких как лямбда. Это так же, как понимание списка, но вместо этого мы прилагаем выражение литералов Topleal.

  • Функция генератора
def gen():
  for i in range(10):
    yield i 
g = gen()

g.next()
0
g.next()
1
  • Выражение генератора

Так же функция генератора может написана как следует.

g = (i for i in range(10))
g
 at 0x7f60fa1045f0>
g.next()
0

Сокращение Если еще

Как и C и JavaScript Terrary Operator (?:) Вы можете написать короткую руку, если больше сравнения. Принимая читаемость во внимание, у нас есть следующий синтаксис в Python

если выражение Если (Состояние) еще еще выражение

Это эквивалентно.

if True:
  print("This is True")
else:
  print("This is False")

Распаковывать кортеж

Python 3 еще более мощная функция распаковки. Вот.

Пример:

a, rest = [1, 3, 4, 6]

В этом случае A Get 1 и остальная часть списка будет назначаться на переменную отдохнуть. я [3, 4, 6]

Струнные конкатенации с разделителем

Если вы хотите объединить список строк с каким-то случайным разделителем. Вы можете сделать это, используя String Methods присоединиться

" || ".join(["hello", "world", "how", "are", "you"])

'hello || world || how || are || you'

Мощные одноклассники

Вы устали читать через строки кода и заблудиться в условных утверждениях? Python One-Listers может быть просто тем, что вы ищете. Например, условные операторы.

if alpha > 7:
   beta = 999
elif alpha == 7:
   beta = 99
else:
   beta = 0

можно действительно упростить:

beta = 999 if alpha > 7 else 99 if alpha == 7 else 0

Удаление дубликатов предметов из списка

Большую часть времени мы хотели удалить или найти дубликат элемента из списка. Давайте посмотрим, как удалить дубликат из списка. Лучший подход – это преобразовать список в комплект. Устанавливает неупорядоченные данные-структура уникальных значений и не разрешают копии.

listNumbers = [20, 22, 24, 26, 28, 28, 20, 30, 24]
print("Original= ", listNumbers)

listNumbers = list(set(listNumbers))
print("After removing duplicate= ", listNumbers)

Как эффективно сравнить два неупорядоченных списка

Выше два списка содержит один и тот же элемент, только их заказ отличается. Давайте посмотрим, как мы можем найти два списка идентичны.

  • Мы можем использовать коллекции. Счетчик Метод, если наш объект усугубляется.
  • Мы можем использовать отсортировано () Если объекты являются упорядоченными.
from collections import Counter

one = [33, 22, 11, 44, 55]
two = [22, 11, 44, 55, 33]
print("is two list are b equal", Counter(one) == Counter(two))

Конвертировать байт в строку

Чтобы преобразовать байт в строку, мы можем декодировать объект BYTES для создания строки. Вы можете декодировать в нужной, которую вы хотите.

byteVar = b"pynative"
str = str(byteVar.decode("utf-8"))
print("Byte to string is" , str )

Конвертировать шестигранную строку, строку в int

hexNumber = "0xfde"
stringNumber="34"

print("Hext toint", int(hexNumber, 0))
print("String to int", int(stringNumber, 0))

рекомендуемые

🎉 🎉. 🎉

Посмотреть мое репо на Github 💡

Оригинал: “https://dev.to/tuantvk/essential-python-tips-and-tricks-for-python-developer-5g9j”