Rumah  >  Artikel  >  pembangunan bahagian belakang  >  12 coretan kod penting yang anda mesti tahu tentang pengaturcaraan Python

12 coretan kod penting yang anda mesti tahu tentang pengaturcaraan Python

WBOY
WBOYke hadapan
2023-04-26 15:52:081725semak imbas

12 个用于日常编程的杀手级 Python 代码片段

1. Ungkapan biasa

Ungkapan biasa ialah teknik terbaik dalam Python untuk memadankan corak, mencari dan menggantikan rentetan, mengesahkan rentetan, dsb. Kini anda tidak perlu menggunakan gelung dan senarai untuk kerja seperti ini.

Lihat contoh kod coretan ungkapan biasa berikut untuk mengesahkan format e-mel:

# Regular Expression Check Mail
import re
def Check_Mail(email):
 pattern = re.compile(r'([A-Za-z0-9]+[.-_])*[A-Za-z0-9]+@[A-Za-z0-9-]+(.[A-Z|a-z]{2,})+')
 if re.fullmatch(pattern, email):
 print("valid")
 else:
 print("Invalid")
Check_Mail("codedev101@gmail.com") #valid
Check_Mail("codedev101-haider@uni.edu")#Invalid
Check_Mail("code-101-work@my.net") # Invalid

2 Pro Slicing

Kod ringkas ini akan membantu. anda memotong senarai anda seperti seorang profesional. Lihat kod sampel di bawah:

# Pro Slicing
# list[start:end:step]
mylist = [1, 2, 3, 5, 5, 6, 7, 8, 9, 12]
mail ="codedev-medium@example.com"
print(mylist[4:-3]) # 5 6 7
print(mail[8 : 14]) # medium

3 Tukar tanpa Temp

Adakah anda menggunakan pembolehubah Temp untuk menukar dua data, bukan dalam Python yang anda tidak perlu gunakannya? Dalam coretan kod ini, saya akan berkongsi dengan anda cara menukar dua pembolehubah data tanpa menggunakan temp.

Lihat kod di bawah:

# Swap without Temp
i = 134
j = 431
[i, j] = [j, i]
print(i) #431
print(j) #134

4 Magic of F-string

Kami boleh menggunakan kaedah format() atau ". %" Kaedah untuk memformat pembolehubah dalam rentetan. Kod ini akan memperkenalkan anda kepada F-strings, yang jauh lebih baik daripada format lain.

Lihat kod contoh di bawah:

# Magic of f-String
# Normal Method
name = "Codedev"
lang = "Python"
data = "{} is writing article on {}".format(name, lang)
print(data)
# Pro Method with f-string
data = f"{name} is writing article on {lang}"
print(data

5 Dapatkan indeks

Kini anda tidak lagi memerlukan Gelung untuk mencari indeks. daripada unsur tertentu. Anda boleh melakukan ini menggunakan kaedah index() pada senarai.

Lihat kod di bawah:

# Get Index
x = [10 ,20, 30, 40, 50]
print(x.index(10)) # 0
print(x.index(30)) # 4
print(x.index(50)) # 2

6. Senarai diisih berdasarkan Senarai Lain

Coretan kod ini akan menunjukkan kepada anda cara mengisih senarai berdasarkan Senarai Lain A senarai menyusun senarai. Coretan ini amat berguna apabila anda perlu mengisih berdasarkan kedudukan yang diingini.

# Sort List based on another List
list1 =["a", "b", "c", "d", "e", "f", "g", "h", "i", "j", "k", "l", "m"]
list2 = [ 0, 1, 1, 1, 2, 2, 0, 1, 1, 3, 4]
C = [x for _, x in sorted(zip(list2, list1), key=lambda pair: pair[0])]
print(C) # ['a', 'g', 'b', 'c', 'd', 'h', 'i', 'e', 'f', 'j', 'k']

7. Membalikkan Kamus

Kini anda tidak memerlukan gelung untuk menterbalikkan mana-mana kamus. Kod coretan ini akan membalikkan kamus pada kali kedua kod coretan dicuba.

# Invert the Dictionary
def Invert_Dictionary(data):
 return{value: key for key, value in data.items()}
data = {"A": 1, "B":2, "C": 3}
invert = Invert_Dictionary(data)
print(invert) # {1: 'A', 2: 'B', 3: 'C'}

8. Pelbagai benang

Berbilang benang akan membantu anda menjalankan fungsi Python secara selari pada masa yang sama. Katakan anda ingin melaksanakan 5 fungsi secara serentak tanpa menunggu setiap fungsi selesai.

Lihat coretan kod di bawah:

# Multi-threading
import threading
def func(num):
 for x in range(num):
 print(x)
if __name__ == "__main__":
 t1 = threading.Thread(target=func, args=(10,))
 t2 = threading.Thread(target=func, args=(20,))
 t1.start()
 t2.start()
 t1.join()
 t2.join()

9 Elemen yang paling banyak muncul dalam senarai

Coretan kod ini hanya akan. kira elemen dalam senarai Elemen yang paling banyak muncul. Saya telah menunjukkan dua cara untuk melakukan ini.

Lihat di bawah:

# Element Occur most in List
from collections import Counter
mylst = ["a", "a", "b", "c", "a", "b","b", "c", "d", "a"]
# Method 1
def occur_most1(mylst):
 return max(set(mylst), key=mylst.count)
print(occur_most1(mylst)) # a
# Method 2
# Much Faster then Method 1
def occur_most2(mylst):
 data = Counter(mylst)
 return data.most_common(1)[0][0]
print(occur_most2(mylst)) # a

10. Garis Pisah

Mempunyai teks mentah dalam format baris demi baris dan ingin bahagikannya kepada beberapa baris. Coretan kod ini akan menyelesaikan masalah anda hanya dalam satu saat.

# Split lines
data1 = """Hello to
Python"""
data2 = """Programming
Langauges"""
print(data1.split("n")) # ['Hello to', 'Python']
print(data2.split("n")) # ['Programming', ' Langauges']

11. Memetakan senarai ke kamus

Coretan kod ini akan membantu anda menukar mana-mana dua senarai ke dalam format kamus. Untuk memahami cara ia berfungsi, lihat kod di bawah:

# Map List into Dictionary
def Convert_to_Dict(k, v):
 return dict(zip(k, v))
k = ["a", "b", "c", "d", "e"]
v = [1, 2, 3, 4, 5]
print(Convert_to_Dict(k, v)) # {'a': 1, 'b': 2, 'c': 3, 'd': 4, 'e': 5}

12. Parsing hamparan

Kini anda tidak memerlukan Pandas atau mana-mana pakej Python luaran yang lain untuk menghuraikan hamparan. Python mempunyai modul CSV terbina dalam dan kod ini akan menunjukkan kepada anda cara menggunakannya.

# Parse Spreadsheet
import csv
#Reading
with open("test.csv", "r") as file:
 csv_reader = csv.reader(file)
 for row in csv_reader:
 print(row)
file.close()
#Writing
header = ["ID", "Languages"]
csv_data = [234, "Python", 344, "JavaScript", 567, "Dart"]
with open("test2.csv", 'w', newline="") as file:
 csv_writer = csv.writer(file)
 csv_writer.writerow(header)
 csv_writer.writerows(csv_data)

Atas ialah kandungan terperinci 12 coretan kod penting yang anda mesti tahu tentang pengaturcaraan Python. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Artikel ini dikembalikan pada:51cto.com. Jika ada pelanggaran, sila hubungi admin@php.cn Padam