Python One-Liners gali padėti atlikti sudėtingas užduotis naudojant tik vieną Python kodo eilutę. Štai keletas naudingiausių, kuriuos reikia žinoti!
Python yra žinomas dėl savo trumpos ir aiškios sintaksės. Dėl Python paprastumo jis kartais vadinamas „vykdomuoju pseudokodu“. „Python“ programas galite padaryti glaustas, naudodami vienos eilutės kodus. Tai padės sutaupyti laiko ir parašyti kodą labiau Pythonic būdu.
Šiame straipsnyje sužinosite 11 Python vienetų, kurie padės koduoti kaip profesionalai.
1. Konvertuoti eilutę į sveikąjį skaičių
Naudodami integruotą eilutę galite konvertuoti į sveikąjį skaičių int() funkcija.
str1 = '0'
str2 = '100'
str3 = '587'
spausdinti (int (str1))
spausdinti (int (str2))
spausdinti (int (str3))
Išvestis:
0
100
587
2. Apverskite sąrašą
Python sąrašą galite pakeisti įvairiais būdais:
Pjaustymo technikos naudojimas
Naudojant šią techniką, originalus sąrašas nekeičiamas, bet sukuriama sąrašo kopija.
arr = [1, 2, 3, 4, 5, 6]
spausdinti (arr)
reverseArr = arr[::-1]
spausdinti (reversedArr)
Išvestis:
[1, 2, 3, 4, 5, 6]
[6, 5, 4, 3, 2, 1]
Naudojant integruotą reverse() funkciją
The atvirkščiai () funkcija grąžina iteratorių, kuris pasiekia nurodytą sąrašą atvirkštine tvarka.
arr = [1, 2, 3, 4, 5, 6]
spausdinti (arr)
reversedArr = sąrašas (atvirkščias (arr))
spausdinti (reversedArr)
Išvestis:
[1, 2, 3, 4, 5, 6]
[6, 5, 4, 3, 2, 1]
Integruoto atvirkštinio () metodo naudojimas
The atvirkščiai () metodas apverčia pradinio sąrašo elementus.
arr = [1, 2, 3, 4, 5, 6]
spausdinti (arr)
arr.reverse()
spausdinti (arr)
Išvestis:
[1, 2, 3, 4, 5, 6]
[6, 5, 4, 3, 2, 1]
3. Sukeisti du kintamuosius
Galite sukeisti du kintamuosius naudodami šią sintaksę:
kintamasis1, kintamasis2 = kintamasis2, kintamasis1
Naudodami šį metodą galite apsikeisti bet kokio tipo duomenų kintamaisiais.
a = 100
b = 12
print ("a vertė prieš keičiant:", a)
print ("b reikšmė prieš keičiant:", b)
a, b = b, a
print ("a reikšmė po pakeitimo:", a)
print ("b reikšmė po pakeitimo:", b)
Išvestis:
A vertė prieš keitimą: 100
B vertė prieš keičiant: 12
A vertė po apsikeitimo: 12
B vertė po apsikeitimo: 100
4. FizzBuzz One-Liner Python
FizzBuzz iššūkis yra klasikinis iššūkis, naudojamas kaip kompiuterių programuotojų interviu tikrinimo įrenginys. FizzBuzz iššūkį galite išspręsti tik vienoje kodo eilutėje:
[spausdinti("Fizz"*(i%3==0)+"Buzz"*(i%5==0) arba i) i diapazone (1, 21)]
Išvestis:
1
2
Fizz
4
Buzz
Fizz
7
8
Fizz
Buzz
11
Fizz
13
14
FizzBuzz
16
17
Fizz
19
Buzz
Susijęs: Kaip užbaigti „FizzBuzz“ iššūkį 5 programavimo kalbomis
5. Sukurkite atsitiktinį slaptažodį
Atsitiktinius slaptažodžius „Python“ galite sugeneruoti naudodami šį vienos eilutės kodą:
importuoti atsitiktinai kaip r; p = 'abcdefghijklmnopqrstuvwxyz0123456789%^*(-_=+)'; print(''.join([p[r.randint (0,len (p)-1)] i diapazone (10)]))
Išvestis:
v4+zagukpz
Šis kodas generuoja 10 ilgio slaptažodį. Jei norite pakeisti slaptažodžio ilgį, atnaujinkite parametrą diapazonas() funkcija. Be to, kiekvieną kartą, kai paleisite kodą, gausite skirtingą atsitiktinę išvestį.
6. Rodyti dabartinę datą ir laiką eilutės formatu
Galite rodyti dabartinę datą ir laiką Python naudodami data ir laikas modulis. Štai vienos eilutės kodas, rodantis dabartinę datą ir laiką eilutės formatu:
importo data ir laikas; spausdinti (datetime.datetime.now().strftime("%Y-%m-%d %H:%M:%S"))
Išvestis:
2021-11-22 14:35:41
7. Patikrinkite, ar styga yra palindromas
Sakoma, kad eilutė yra palindromas, jei originali eilutė ir jos reversas yra vienodi. Galite patikrinti, ar eilutė yra palindromas, ar ne, naudodami šį kodą:
str1 = "MUO"
str2 = "ponia"
str3 = "MAKEUSEOF"
str4 = "mama"
print('Taip') if str1 == str1[::-1] else print('Ne')
print('Taip') if str2 == str2[::-1] else print('Ne')
print('Taip') if str3 == str3[::-1] else print('Ne')
print('Taip') if str4 == str4[::-1] else print('Ne')
Išvestis:
Nr
Taip
Nr
Taip
Susijęs: Kaip patikrinti, ar styga yra palindromas
8. Raskite skaičiaus faktorių
Neneigiamo sveikojo skaičiaus faktorialas n yra visų teigiamų sveikųjų skaičių, mažesnių arba lygūs, sandauga n. Skaičiaus faktorialą galite rasti vienoje kodo eilutėje naudodami lambda funkcijas.
skaičius1 = 5
skaičius2 = 0
skaičius 3 = 10
skaičius 4 = 12
faktorialus = lambda skaičius: 1, jei skaičius <= 1 kitas skaičius* faktorius (skaičius-1)
print ("Factory of", num1, ":", faktorialus (num1))
print ("Factory of", num2, ":", faktorialus (num2))
print ("Factory of", num3, ":", faktorialus (num3))
print ("Factory of", num4, ":", faktorialus (num4))
Išvestis:
Faktinis koeficientas 5: 120
Faktinis 0:1
10 gamyklinis numeris: 3628800
12 gamyklinis numeris: 479001600
Susijęs: „Python Lambda“ funkcijų supratimo vadovas pradedančiajam
9. Spausdinti Fibonačio seką iki N terminų
A Fibonačio seka yra skaičių serija, kurioje kiekvienas narys yra dviejų ankstesnių terminų suma, prasidedanti nuo 0 ir 1. Galite spausdinti Fibonacci seriją iki n terminai naudojant lambda funkcija.
iš functools importo sumažinti; fibSequence = lambda n: sumažinti (lambda x, _: x+[x[-1]+x[-2]], diapazonas (n-2), [0, 1])
spausdinti (fibSequence (10))
spausdinti (fibSequence (5))
spausdinti (fibSequence (6))
Išvestis:
[0, 1, 1, 2, 3, 5, 8, 13, 21, 34]
[0, 1, 1, 2, 3]
[0, 1, 1, 2, 3, 5]
10. Apskaičiuokite sąrašo sumą
Tu gali apskaičiuokite sąrašo sumą naudojant suma() funkcija Python.
list1 = [1, 2, 3, 4, 5, 6, 7]
list2 = [324, 435, 456]
list3 = [0, 43, 35, 12, 45]
spausdinti (suma (sąrašas1))
spausdinti (suma (sąrašas2))
spausdinti (suma (sąrašas3))
Išvestis:
28
1215
135
11. Rūšiuoti sąrašą
Galite rūšiuoti sąrašą naudodami Rūšiuoti () metodas. Štai to paties vieno laido kodas:
list1 = [12, 345, 123, 34, 23, 37]
list2 = ['m', 'a', 'k', 'e', 'u', 's', 'e', 'o', 'f']
list3 = [5, 4, 3, 2, 1]
print ("Prieš rūšiavimą:")
spausdinti (1 sąrašas)
spausdinti (2 sąrašas)
spausdinti (3 sąrašas)
list1.sort()
list2.sort()
list3.sort()
print ("Po rūšiavimo:")
spausdinti (1 sąrašas)
spausdinti (2 sąrašas)
spausdinti (3 sąrašas)
Išvestis:
Prieš rūšiavimą:
[12, 345, 123, 34, 23, 37]
['pasinaudoti']
[5, 4, 3, 2, 1]
Po rūšiavimo:
[12, 23, 34, 37, 123, 345]
[„a“, „e“, „e“, „f“, „k“, „m“, „o“, „s“, „u“]
[1, 2, 3, 4, 5]
Jei norite peržiūrėti visą šiame straipsnyje naudojamą šaltinio kodą, štai GitHub saugykla.
Rašykite daugiau Pythonic kodo naudodami integruotus metodus ir funkcijas
Integruoti metodai ir funkcijos padeda sutrumpinti kodą ir padidinti jo efektyvumą. „Python“ teikia daug integruotų metodų ir funkcijų, pvz., „reduce(), split(), enumerate(), eval() ir pan. Pasinaudokite jais visais ir parašykite daugiau Pythonic kodo.
Python standartinėje bibliotekoje yra daug funkcijų, padedančių atlikti programavimo užduotis. Sužinokite apie naudingiausią ir sukurkite patikimesnį kodą.
Skaitykite toliau
- Programavimas
- Python
- Programavimo kalbos
Yuvraj yra kompiuterių mokslų bakalauro studentas Delio universitete, Indijoje. Jis aistringai vertina „Full Stack“ žiniatinklio kūrimą. Kai jis nerašo, jis tyrinėja įvairių technologijų gelmes.
Prenumeruokite mūsų naujienlaiškį
Prisijunkite prie mūsų naujienlaiškio, kad gautumėte techninių patarimų, apžvalgų, nemokamų el. knygų ir išskirtinių pasiūlymų!
Norėdami užsiprenumeruoti, spustelėkite čia