Írta: Yuvraj Chandra
RészvényCsipogEmail

A Python One-Liners segítségével összetett feladatokat hajthat végre egyetlen Python-kódsorral. Íme néhány a leghasznosabb tudnivalók közül!

A Python rövid és világos szintaxisáról ismert. A Python egyszerűsége miatt néha „futtatható pszeudokódnak” is nevezik. A Python programokat tömörebbé teheti egysoros kódok használatával. Ezzel időt takaríthat meg, és Pythonic módon írhat kódot.

Ebből a cikkből 11 Python egysorost ismerhet meg, amelyek segítségével profi módon kódolhat.

1. Karakterlánc konvertálása egész számmá

Egy karakterláncot egész számmá konvertálhat a beépített segítségével int() funkció.

str1 = '0'
str2 = '100'
str3 = '587'
nyomtatás (int (str1))
nyomtatás (int (str2))
nyomtatás (int (str3))

Kimenet:

0
100
587

2. Lista megfordítása

A Pythonban lévő listát különféle módszerekkel fordíthatja meg:

A szeletelési technika használata

Ezzel a technikával az eredeti lista nem módosul, hanem a lista másolata jön létre.

arr = [1, 2, 3, 4, 5, 6]
nyomtatás (arr)
fordítottArr = arr[::-1]
nyomtatás (fordítottArr)

Kimenet:

[1, 2, 3, 4, 5, 6]
[6, 5, 4, 3, 2, 1]

A beépített fordított() függvény használata

Az fordított() függvény egy iterátort ad vissza, amely fordított sorrendben éri el az adott listát.

arr = [1, 2, 3, 4, 5, 6]
nyomtatás (arr)
reversedArr = lista (fordítva (arr))
nyomtatás (fordítottArr)

Kimenet:

[1, 2, 3, 4, 5, 6]
[6, 5, 4, 3, 2, 1]

A beépített reverse() metódus használata

Az fordított() metódus megfordítja az eredeti lista elemeit.

arr = [1, 2, 3, 4, 5, 6]
nyomtatás (arr)
arr.reverse()
nyomtatás (arr)

Kimenet:

[1, 2, 3, 4, 5, 6]
[6, 5, 4, 3, 2, 1]

3. Cserélj két változót

Két változót felcserélhet a következő szintaxis használatával:

változó1, változó2 = változó2, változó1

Ezzel a módszerrel bármilyen adattípus változóit felcserélheti.

a = 100
b = 12
print("A értéke csere előtt:", a)
print("b értéke csere előtt:", b)
a, b = b, a
print("A értéke csere után:", a)
print("b értéke csere után:", b)

Kimenet:

A csere előtti értéke: 100
B értéke csere előtt: 12
A csere utáni értéke: 12
B értéke csere után: 100

4. FizzBuzz One-Liner Pythonban

A FizzBuzz kihívás egy klasszikus kihívás, amelyet számítógép-programozók interjúszűrő eszközeként használnak. A FizzBuzz kihívást egyetlen kódsorban oldhatja meg:

[print("Fizz"*(i%3==0)+"Buzz"*(i%5==0) vagy i) for i tartományban (1, 21)]

Kimenet:

1
2
Pezseg
4
Zümmögés
Pezseg
7
8
Pezseg
Zümmögés
11
Pezseg
13
14
FizzBuzz
16
17
Pezseg
19
Zümmögés

Összefüggő: Hogyan lehet teljesíteni a FizzBuzz kihívást 5 programozási nyelven

5. Véletlenszerű jelszó generálása

A Pythonban véletlenszerű jelszavakat generálhat a következő egysoros kóddal:

import véletlenszerű mint r; p = 'abcdefghijklmnopqrstuvwxyz0123456789%^*(-_=+)'; print(''.join([p[r.randint (0,len (p)-1)] for i a (10) tartományban]))

Kimenet:

v4+zagukpz

Ez a kód 10 hosszúságú jelszót generál. Ha módosítani szeretné a jelszó hosszát, frissítse a paraméterét hatótávolság() funkció. Ezenkívül minden alkalommal, amikor futtatja a kódot, más véletlenszerű kimenetet kap.

6. Jelenítse meg az aktuális dátumot és időt karakterlánc formátumban

A Pythonban megjelenítheti az aktuális dátumot és időt a dátum idő modult. Íme az egysoros kód az aktuális dátum és idő megjelenítéséhez karakterlánc formátumban:

import dátum és idő; nyomtatás (datetime.datetime.now().strftime("%Y-%m-%d %H:%M:%S"))

Kimenet:

2021-11-22 14:35:41

7. Ellenőrizze, hogy egy karakterlánc palindrom-e

Egy karakterláncot palindromnak nevezünk, ha az eredeti karakterlánc és a fordítottja megegyezik. A következő kóddal ellenőrizheti, hogy egy karakterlánc palindrom-e vagy sem:

str1 = "MUO"
str2 = "hölgyem"
str3 = "MAKEUSEOF"
str4 = "anya"
print('Igen') if str1 == str1[::-1] else print('Nem')
print('Igen') if str2 == str2[::-1] else print('Nem')
print('Igen') if str3 == str3[::-1] else print('Nem')
print('Igen') if str4 == str4[::-1] else print('Nem')

Kimenet:

Nem
Igen
Nem
Igen

Összefüggő: Hogyan ellenőrizhető, hogy egy húr palindrom-e

8. Keresse meg egy szám faktoriálisát

Egy nem negatív egész szám faktoriálisa n minden olyan pozitív egész szám szorzata, amelyek kisebbek vagy egyenlők vele n. Egy szám faktoriálisát egy kódsorban találhatja meg a használatával lambda funkciókat.

szám1 = 5
szám2 = 0
szám3 = 10
szám4 = 12
faktorál = lambda szám: 1, ha szám <= 1 egyébként szám*faktoriális (szám-1)
print("Factorial of", num1, ":", factorial (num1))
print("Factorial of", num2, ":", factorial (num2))
print("Factorial of", num3, ":", factorial (num3))
print("Factorial of", num4, ":", factorial (num4))

Kimenet:

Faktoriális 5: 120
Faktoriális 0:1
10-es gyári szám: 3628800
12-es gyári szám: 479001600

Összefüggő: Útmutató kezdőknek a Python Lambda funkcióinak megértéséhez

9. Nyomtasson Fibonacci-sorozatot N-ig

A Fibonacci sorozat olyan számsor, amelyben minden tag az előző két szám összege, 0-tól és 1-től kezdve. A Fibonacci sorozatot legfeljebb n kifejezések használatával lambda funkció.

functools-ból import csökkenteni; fibSequence = lambda n: kicsinyítés (lambda x, _: x+[x[-1]+x[-2]], tartomány (n-2), [0, 1])
nyomtatás (fibSequence (10))
nyomtatás (fibSequence (5))
nyomtatás (fibSequence (6))

Kimenet:

[0, 1, 1, 2, 3, 5, 8, 13, 21, 34]
[0, 1, 1, 2, 3]
[0, 1, 1, 2, 3, 5]

10. Számítsa ki egy lista összegét

tudsz számítsa ki egy lista összegét használni a összeg() függvény Pythonban.

lista1 = [1, 2, 3, 4, 5, 6, 7]
lista2 = [324, 435, 456]
lista3 = [0, 43, 35, 12, 45]
nyomtatás (összeg (lista1))
nyomtatás (összeg (lista2))
nyomtatás (összeg (lista3))

Kimenet:

28
1215
135

11. Lista rendezése

A listát a gombbal rendezheti fajta() módszer. Íme az egysoros kód ugyanennek:

lista1 = [12, 345, 123, 34, 23, 37]
list2 = ['m', 'a', 'k', 'e', ​​'u', 's', 'e', ​​'o', 'f']
list3 = [5, 4, 3, 2, 1]
print("Rendezés előtt:")
nyomtatás (lista1)
nyomtatás (2. lista)
nyomtatás (3. lista)
list1.sort()
list2.sort()
list3.sort()
print("Rendezés után:")
nyomtatás (lista1)
nyomtatás (2. lista)
nyomtatás (3. lista)

Kimenet:

Rendezés előtt:
[12, 345, 123, 34, 23, 37]
['kihasználni']
[5, 4, 3, 2, 1]
Rendezés után:
[12, 23, 34, 37, 123, 345]
[„a”, „e”, „e”, „f”, „k”, „m”, „o”, „s”, „u”]
[1, 2, 3, 4, 5]

Ha meg szeretné tekinteni a cikkben használt teljes forráskódot, itt található a GitHub adattár.

Írjon több Pythonic kódot beépített módszerekkel és függvényekkel

A beépített módszerek és funkciók segítik a kód lerövidítését és hatékonyságának növelését. A Python számos beépített metódust és funkciót kínál, mint például a Reduction(), a split(), az enumerate(), az eval() és így tovább. Használja ki mindegyiket, és írjon több Pythonic kódot.

20 Python-függvény, amit tudnia kell

A Python Standard Library számos olyan funkciót tartalmaz, amelyek segítik a programozási feladatokat. Ismerje meg a leghasznosabbakat, és hozzon létre robusztusabb kódot.

Olvassa el a következőt

RészvényCsipogEmail
Kapcsolódó témák
  • Programozás
  • Piton
  • Programozási nyelvek
A szerzőről
Yuvraj Chandra (74 cikk megjelent)

Yuvraj az indiai Delhi Egyetem számítástechnikai egyetemi hallgatója. Szenvedélyesen rajong a Full Stack webfejlesztésért. Amikor nem ír, a különböző technológiák mélységeit kutatja.

Továbbiak Yuvraj Chandra-tól

Iratkozzon fel hírlevelünkre

Csatlakozzon hírlevelünkhöz műszaki tippekért, ismertetőkért, ingyenes e-könyvekért és exkluzív ajánlatokért!

Kattintson ide az előfizetéshez