Rumah  >  Artikel  >  pembangunan bahagian belakang  >  17 petua Python berguna untuk dikongsi!

17 petua Python berguna untuk dikongsi!

PHPz
PHPzke hadapan
2023-04-17 09:22:04668semak imbas

17 petua Python berguna untuk dikongsi!

Teks

Helo semua, saya teknologi kecerdasan buatan Python.

Dalam artikel ini, kita akan membincangkan helah python yang paling biasa digunakan. Kebanyakan teknik ini adalah Trik mudah yang saya gunakan dalam kerja harian saya, saya fikir perkara yang baik harus dibawa keluar dan dikongsi dengan semua orang.

Tanpa berlengah lagi, mari mulakan! :)

Ringkasan petua

1 Mengendalikan berbilang input daripada pengguna

Kadangkala kita perlu mendapatkan berbilang input daripada pengguna untuk menggunakan gelung atau sebarang lelaran, secara amnya Ia ditulis seperti berikut:

# bad practice码
n1 = input("enter a number : ")
n2 = input("enter a number : ")
n2 = input("enter a number : ")
print(n1, n2, n3)

Tetapi kaedah pemprosesan yang lebih baik adalah seperti berikut:

# good practice
n1, n2, n3 = input("enter a number : ").split()
print(n1, n2, n3)

2. Memproses berbilang pernyataan bersyarat

Jika kita perlu semak berbilang syarat dalam kod Penyataan bersyarat, pada masa ini kita boleh menggunakan fungsi all() atau any() untuk mencapai matlamat kita. Secara amnya, all() digunakan apabila kita mempunyai berbilang dan syarat dan any() digunakan apabila kita mempunyai berbilang atau syarat. Penggunaan ini akan menjadikan kod kami lebih jelas dan lebih mudah dibaca, dan akan membantu kami mengelakkan masalah semasa menyahpepijat.

Contoh umum untuk semua() adalah seperti berikut:

size = "lg"
color = "blue"
price = 50
# bad practice
if size == "lg" and color == "blue" and price < 100:
 print("Yes, I want to but the product.")

Pendekatan yang lebih baik adalah seperti berikut:

# good practice
conditions = [
 size == "lg",
 color == "blue",
 price < 100,
]
if all(conditions):
 print("Yes, I want to but the product.")

Contoh umum untuk mana-mana() ialah seperti berikut:

# bad practice
size = "lg"
color = "blue"
price = 50
if size == "lg" or color == "blue" or price < 100:
 print("Yes, I want to but the product.")

Kaedah pemprosesan yang lebih baik adalah seperti berikut:

# good practice
conditions = [
 size == "lg",
 color == "blue",
 price < 100,
]
if any(conditions):
 print("Yes, I want to but the product.")

3. Tentukan pariti nombor

Ini mudah dilaksanakan, kami dapat input daripada pengguna dan tukarkannya Tukar kepada integer, semak baki operasi pada nombor 2, jika bakinya adalah sifar, maka ia adalah nombor genap.

print('odd' if int(input('Enter a number: '))%2 else 'even')

4. Tukar pembolehubah

Jika kita perlu menukar nilai pembolehubah dalam Python, kita tidak perlu mentakrifkan pembolehubah sementara untuk beroperasi. Kami biasanya menggunakan kod berikut untuk melaksanakan pertukaran berubah:

v1 = 100
v2 = 200
# bad practice
temp = v1
v1 = v2
v2 = temp

Tetapi kaedah pemprosesan yang lebih baik adalah seperti berikut:

v1 = 100
v2 = 200
# good practice
v1, v2 = v2, v1

5 Tentukan sama ada rentetan itu ialah rentetan palindrom

Cara paling mudah untuk membalikkan rentetan ialah [::-1], kodnya adalah seperti berikut:

print("John Deo"[::-1])

6 Membalikkan rentetan

Hakim rentetan dalam Python Untuk menyemak sama ada rentetan itu ialah rentetan palindrom, anda hanya perlu menggunakan pernyataan

string.find(string[::-1])== 0. Kod sampel adalah seperti berikut:

v1 = "madam" # is a palindrome string
v2 = "master" # is not a palindrome string
print(v1.find(v1[::-1]) == 0) # True
print(v1.find(v2[::-1]) == 0) # False

7. Cuba Gunakan pernyataan Inline if

Kebanyakan masa, kami hanya mempunyai satu pernyataan selepas syarat, jadi menggunakan pernyataan Inline if boleh membantu kami menulis kod yang lebih ringkas. Sebagai contoh, kaedah penulisan umum ialah:

name = "ali"
age = 22
# bad practices
if name:
 print(name)
if name and age > 18:
 print("user is verified")

, tetapi cara yang lebih baik untuk menanganinya adalah seperti berikut:

# a better approach
print(name if name else "")
""" here you have to define the else condition too"""
# good practice
name and print(name)
age > 18 and name and print("user is verified")

8. Padamkan elemen pendua dalam senarai

Kami tidak perlu merentasi keseluruhan senarai untuk menyemak elemen pendua Kami hanya boleh menggunakan set() untuk memadamkan elemen pendua adalah seperti berikut:

lst = [1, 2, 3, 4, 3, 4, 4, 5, 6, 3, 1, 6, 7, 9, 4, 0]
print(lst)
unique_lst = list(set(lst))
print(unique_lst)

9. Cari elemen yang paling berulang dalam senarai

Dalam Python, anda boleh menggunakan fungsi max() dan pass list.count sebagai kunci untuk mencari elemen yang paling banyak ulangan dalam senarai Kod tersebut adalah seperti berikut :

lst = [1, 2, 3, 4, 3, 4, 4, 5, 6, 3, 1, 6, 7, 9, 4, 0]
most_repeated_item = max(lst, key=lst.count)
print(most_repeated_item)

10 Formula penjanaan senarai

Ciri kegemaran saya dalam Python ialah pemahaman senarai memahami sebagai bahasa semula jadi. Contohnya adalah seperti berikut:

numbers = [1,2,3,4,5,6,7]
evens = [x for x in numbers if x % 2 is 0]
odds = [y for y in numbers if y not in evens]
cities = ['London', 'Dublin', 'Oslo']
def visit(city):
 print("Welcome to "+city)
for city in cities:
 visit(city)

11 Gunakan *args untuk menghantar berbilang parameter

Dalam Python kita boleh menggunakan *args untuk menghantar berbilang parameter kepada fungsi, contohnya:

<.>
def sum_of_squares(n1, n2)
 return n1**2 + n2**2
print(sum_of_squares(2,3))
# output: 13
"""
what ever if you want to pass, multiple args to the function
as n number of args. so let's make it dynamic.
"""
def sum_of_squares(*args):
 return sum([item**2 for item in args])
# now you can pass as many parameters as you want
print(sum_of_squares(2, 3, 4))
print(sum_of_squares(2, 3, 4, 5, 6))
12. >

13 Menyambung berbilang elemen dalam senarai

Dalam Python, fungsi Join() biasanya digunakan untuk menggabungkan semua elemen dalam senarai bersama-sama simbol apabila splicing, seperti ini Contohnya:
lst = ["blue", "lightblue", "pink", "orange", "red"]
for idx, item in enumerate(lst):
print(idx, item)

14. Cantumkan dua kamus

Selain itu, cari latar belakang Python atas akaun rasmi dan balas "Lanjutan" untuk mendapatkan pakej hadiah kejutan.
names = ["john", "sara", "jim", "rock"]
print(", ".join(names))

Dalam Python kita boleh menggunakan {**dict_name, **dict_name2, …} untuk menggabungkan berbilang kamus Contohnya adalah seperti berikut:

Hasilnya adalah seperti berikut:

15 Gunakan dua senarai untuk menjana kamus
d1 = {"v1": 22, "v2": 33}
d2 = {"v2": 44, "v3": 55}
d3 = {**d1, **d2}
print(d3)

Dalam Python, jika kita perlu menggabungkan elemen yang sepadan dalam dua senarai ke dalam kamus, maka kita boleh menggunakan fungsi zip untuk melakukannya dengan mudah ini sedikit. Kodnya adalah seperti berikut:

{'v1': 22, 'v2': 44, 'v3': 55}

16 Isih kamus mengikut nilai

Dalam Python kami menggunakan fungsi sorted() untuk mengisih kamus mengikut nilainya seperti berikut:

keys = ['a', 'b', 'c']
vals = [1, 2, 3]
zipped = dict(zip(keys, vals))
Selanjutnya, kita juga boleh menyusunnya dalam tertib menurun dengan menghantar terbalik=Benar:

17 Cetakan cantik
d = {
 "v1": 80,
 "v2": 20,
 "v3": 40,
 "v4": 20,
 "v5": 10,
}
sorted_d = dict(sorted(d.items(), key=lambda item: item[1]))
print(sorted_d)
当然我们也可以使用itemgetter( )来替代上述 lambda函数,代码如下:
from operator import itemgetter
sorted_d = dict(sorted(d.items(), key=itemgetter(1)))

Menggunakan Cetakan(. ) dalam Fungsi Python kadang-kadang mempunyai output yang buruk Pada masa ini, kita boleh menggunakan pprint untuk menjadikan output lebih cantik. >Anda boleh menggunakan pprint Functions boleh menjadikan output kamus lebih mudah dibaca.

Atas ialah kandungan terperinci 17 petua Python berguna untuk dikongsi!. 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