18 scripts Python que us ajuden a escriure codi més ràpidament

Bloc

18 scripts Python que us ajuden a escriure codi més ràpidament

18 scripts Python que us ajuden a escriure codi més ràpidament

Python és un llenguatge de programació sense BS. La llegibilitat i la simplicitat del disseny són dues de les raons més importants de la seva immensa popularitat.

Per això, val la pena recordar alguns trucs habituals de Python per ajudar a millorar el disseny del vostre codi. Això us estalviarà la molèstia de navegar per Stack Overflow cada vegada que necessiteu fer alguna cosa.
Els següents trucs seran útils en els vostres exercicis de codificació del dia a dia.

1. Trobar elements únics en una cadena

El següent fragment es pot utilitzar per trobar tots els elements únics d'una cadena. Utilitzem la propietat que tots els elements d'un conjunt són únics.

my_string = 'aavvccccddddeee' # converting the string to a set temp_set = set(my_string) # stitching set into a string using join new_string = ''.join(temp_set) print(new_string)

2. Ús de les majúscules del títol (majúscules de primera lletra)

El següent fragment es pot utilitzar per convertir una cadena en majúscules i minúscules. Això es fa utilitzant el title() mètode de la classe de cadena.

com trobar el codi d’enllaç al meu televisor Roku
my_string = 'my name is chaitanya baweja' # using the title() function of string class new_string = my_string.title() print(new_string) # Output # My Name Is Chaitanya Baweja

3. Invertir una cadena

El següent fragment inverteix una cadena mitjançant l'operació de tall de Python.

# Reversing a string using slicing my_string = 'ABCDE' reversed_string = my_string[::-1] print(reversed_string) # Output # EDCBA

Podeu llegir més sobre això aquí .

4. Impressió d'una cadena o d'una llista n Times

Podeu utilitzar la multiplicació (*) amb cadenes o llistes. Això ens permet multiplicar-los tantes vegades com vulguem.

n = 3 # number of repetitions my_string = 'abcd' my_list = [1,2,3] print(my_string*n) # abcdabcdabcd print(my_list*n) # [1,2,3,1,2,3,1,2,3]

Un cas d’ús interessant podria ser definir una llista amb un valor constant, diguem-ne zero.

n = 4 my_list = [0]*n # n denotes the length of the required list # [0, 0, 0, 0]

5. Combinació d'una llista de cadenes en una sola cadena

El mètode join () combina una llista de cadenes passades com a argument en una sola cadena. En el nostre cas, els separem mitjançant el separador de comes.

list_of_strings = ['My', 'name', 'is', 'Chaitanya', 'Baweja'] # Using join with the comma separator print(','.join(list_of_strings)) # Output # My,name,is,Chaitanya,Baweja

6. Intercanviar valors entre dues variables

Python facilita l'intercanvi de valors entre dues variables sense utilitzar una altra variable.

a = 1 b = 2 a, b = b, a print(a) # 2 print(b) # 1

7. Dividiu una cadena en una llista de subcadenes

Podem dividir una cadena en una llista de subcadenes mitjançant el mètode .split () de la classe de cadenes. També podeu passar com a argument el separador en què voleu dividir.

string_1 = 'My name is Chaitanya Baweja' string_2 = 'sample/ string 2' # default separator ' ' print(string_1.split()) # ['My', 'name', 'is', 'Chaitanya', 'Baweja'] # defining separator as '/' print(string_2.split('/')) # ['sample', ' string 2']

8. Comprensió de la llista

La comprensió de la llista ens proporciona una manera elegant de crear llistes basades en altres llistes.
El fragment següent crea una llista nova multiplicant cada element de la llista antiga per dos.

# Multiplying each element in a list by 2 original_list = [1,2,3,4] new_list = [2*x for x in original_list] print(new_list) # [2,4,6,8]

Podeu llegir-ne més informació aquí.

9. Comproveu si una cadena determinada és o no un palíndrom

Ja hem comentat com invertir una cadena. Per tant, els palíndroms es converteixen en un programa senzill a Python.

my_string = 'abcba' if my_string == my_string[::-1]: print('palindrome') else: print('not palindrome') # Output # palindrome

10. Utilitzant Enumerar per obtenir parells d’índexs / valors

El següent script utilitza enumerate per recórrer els valors d’una llista juntament amb els seus índexs.

my_list = ['a', 'b', 'c', 'd', 'e'] for index, value in enumerate(my_list): print('{0}: {1}'.format(index, value)) # 0: a # 1: b # 2: c # 3: d # 4: e

11. Esbrineu si dues cordes són anagrames

Una aplicació interessant de la classe Counter és trobar anagrames.

Un anagrama és una paraula o frase formada reordenant les lletres d’una paraula o frase diferent.

Si el Counter els objectes de dues cordes són iguals, llavors són anagrames.

from collections import Counter str_1, str_2, str_3 = 'acbde', 'abced', 'abcda' cnt_1, cnt_2, cnt_3 = Counter(str_1), Counter(str_2), Counter(str_3) if cnt_1 == cnt_2: print('1 and 2 anagram') if cnt_1 == cnt_3: print('1 and 3 anagram')

12. Utilitzant el bloc try-except-else

El tractament d’errors a Python es pot fer fàcilment mitjançant el bloc try / except. Pot ser útil afegir una instrucció else a aquest bloc. S’executa quan no hi ha cap excepció al bloc try.
Si necessiteu executar alguna cosa independentment de l'excepció, utilitzeu finally.

a, b = 1,0 try: print(a/b) # exception raised when b is 0 except ZeroDivisionError: print('division by zero') else: print('no exceptions raised') finally: print('Run this always')

13. Freqüència d'elements en una llista

Hi ha diverses maneres de fer-ho, però el meu preferit és utilitzar Python Counter classe.

El comptador Python fa un seguiment de la freqüència de cada element al contenidor. Counter() retorna un diccionari amb elements com a tecles i freqüència com a valors.

També fem servir el most_common() funció per obtenir l'element most_frequent de la llista.

# finding frequency of each element in a list from collections import Counter my_list = ['a','a','b','b','b','c','d','d','d','d','d'] count = Counter(my_list) # defining a counter object print(count) # Of all elements # Counter({'d': 5, 'b': 3, 'a': 2, 'c': 1}) print(count['b']) # of individual element # 3 print(count.most_common(1)) # most frequent element # [('d', 5)]

14. Comproveu l'ús de la memòria d'un objecte

El següent script es pot utilitzar per comprovar l'ús de la memòria d'un objecte. Llegiu-ne més aquí .

import sys num = 21 print(sys.getsizeof(num)) # In Python 2, 24 # In Python 3, 28

15. Mostreig d'una llista

El fragment següent genera n nombre de mostres aleatòries d'una llista donada mitjançant el random biblioteca.

import random my_list = ['a', 'b', 'c', 'd', 'e'] num_samples = 2 samples = random.sample(my_list,num_samples) print(samples) # [ 'a', 'e'] this will have any 2 random values

Se m'ha recomanat el secrets biblioteca per generar mostres aleatòries amb finalitats de criptografia. El següent fragment funcionarà
només a Python 3.

import secrets # imports secure module. secure_random = secrets.SystemRandom() # creates a secure random object. my_list = ['a','b','c','d','e'] num_samples = 2 samples = secure_random.sample(my_list, num_samples) print(samples) # [ 'e', 'd'] this will have any 2 random values

16. Temps que es triga a executar un tros de codi

El fragment següent utilitza el time biblioteca per calcular el temps necessari per executar un tros de codi.

import time start_time = time.time() # Code to check follows a, b = 1,2 c = a+ b # Code to check ends end_time = time.time() time_taken_in_micro = (end_time- start_time)*(10**6) print(' Time taken in micro_seconds: {0} ms').format(time_taken_in_micro)

17. Aplanar una llista de llistes

De vegades no esteu segur de la profunditat de nidificació de la vostra llista i simplement voleu tots els elements d’una llista plana.
A continuació s’explica com podeu aconseguir-ho:

from iteration_utilities import deepflatten # if you only have one depth nested_list, use this def flatten(l): return [item for sublist in l for item in sublist] l = [[1,2,3],[3]] print(flatten(l)) # [1, 2, 3, 3] # if you don't know how deep the list is nested l = [[1,2,3],[4,[5],[6,7]],[8,[9,[10]]]] print(list(deepflatten(l, depth=3))) # [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]

Aplanades grolleres és una manera millor de fer-ho si teniu un format correctament.

18. Fusió de dos diccionaris

Mentre que a Python 2, vam utilitzar el update() mètode per fusionar dos diccionaris; Python 3.5 va fer el procés encara més senzill.
Al guió que es mostra a continuació, es combinen dos diccionaris. Els valors del segon diccionari s’utilitzen en cas d’interseccions.

dict_1 = {'apple': 9, 'banana': 6} dict_2 = {'banana': 4, 'orange': 8} combined_dict = {**dict_1, **dict_2} print(combined_dict) # Output # {'apple': 9, 'banana': 4, 'orange': 8}

Gràcies per llegir!

#python