Voici quelques conseils et outils pratiques Python que j'ai collectés ces dernières années. J'espère qu'ils vous seront utiles.
x = 6 y = 5 x, y = y, x print x >>> 5 print y >>> 6
print "Hello" if True else "World" >>> Hello
ci-dessous La dernière méthode est intéressante pour lier deux objets de types différents.
nfc = ["Packers", "49ers"] afc = ["Ravens", "Patriots"] print nfc + afc >>> ['Packers', '49ers', 'Ravens', 'Patriots'] print str(1) + " world" >>> 1 world print `1` + " world" >>> 1 world print 1, "world" >>> 1 world print nfc, 1 >>> ['Packers', '49ers'] 1
#除后向下取整 print 5.0//2 >>> 2 # 2的5次方 print 2**5 >> 32
Faites attention à la division des nombres à virgule flottante
print .3/.1 >>> 2.9999999999999996 print .3//.1 >>> 2.0
C'est l'une des les choses que j'ai vues dans de nombreuses langues Il existe peu de méthodes aussi efficaces et simples
x = 2 if 3 > x > 1: print x >>> 2 if 1 0: print x >>> 2
Parcourir deux listes en même temps
nfc = ["Packers", "49ers"] afc = ["Ravens", "Patriots"] for teama, teamb in zip(nfc, afc): print teama + " vs. " + teamb >>> Packers vs. Ravens >>> 49ers vs. Patriots
Itération de liste indexée
teams = ["Packers", "49ers", "Ravens", "Patriots"] for index, team in enumerate(teams): print index, team >>> 0 Packers >>> 1 49ers >>> 2 Ravens >>> 3 Patriots
Étant donné une liste, nous pouvons sélectionner la méthode de liste paire :
numbers = [1,2,3,4,5,6] even = [] for number in numbers: if number%2 == 0: even.append(number)
se transforme en ce qui suit :
numbers = [1,2,3,4,5,6] even = [number for number in numbers if number%2 == 0]
N'est-ce pas c'est génial, haha.
Semblables aux compréhensions de listes, les dictionnaires peuvent faire le même travail :
teams = ["Packers", "49ers", "Ravens", "Patriots"] print {key: value for value, key in enumerate(teams)} >>> {'49ers': 1, 'Ravens': 2, 'Patriots': 3, 'Packers': 0}
Initialiser les valeurs de la liste
items = [0]*3 print items >>> [0,0,0]
Liste conversion Obtenir l'élément du dictionnaire pour
chaîneteams = ["Packers", "49ers", "Ravens", "Patriots"] print ", ".join(teams) >>> 'Packers, 49ers, Ravens, Patriots'
J'admets que le code try/sauf n'est pas élégant, mais voici un moyen simple, essayez-le dans la recherche du dictionnaire pour la clé. Si la valeur correspondante n'est pas trouvée, le deuxième paramètre sera utilisé pour définir sa valeur variable. Remplacez
data = {'user': 1, 'name': 'Max', 'three': 4} try: is_admin = data['admin'] except KeyError: is_admin = False
comme ceci :
data = {'user': 1, 'name': 'Max', 'three': 4} is_admin = data.get('admin', False)
Parfois, vous n'avez besoin que d'un sous-ensemble d'éléments dans une liste, en voici quelques-uns sous-ensembles d’une méthode d’ensemble de listes.
x = [1,2,3,4,5,6] #前3个 print x[:3] >>> [1,2,3] #中间4个 print x[1:5] >>> [2,3,4,5] #最后3个 print x[3:] >>> [4,5,6] #奇数项 print x[::2] >>> [1,3,5] #偶数项 print x[1::2] >>> [2,4,6]
Il y a quelque temps, Jeff Atwood a fait la promotion d'un exercice de programmation simple appelé FizzBuzz. La question citait comme suit :
<🎜. > Écrivez un programme qui imprime les nombres de 1 à 100, en remplaçant le nombre par « Fizz » pour les multiples de 3, « Buzz » par les multiples de 5 et « FizzBuzz » pour les nombres qui sont tous deux multiples de 3 et 5. Voici une manière courte et intéressante de résoudre ce problème :for x in range(101): print"fizz"[x%3*4::]+"buzz"[x%5*4::] or x
from collections import Counter print Counter("hello") >>> Counter({'l': 2, 'h': 1, 'e': 1, 'o': 1})
from itertools import combinations teams = ["Packers", "49ers", "Ravens", "Patriots"] for game in combinations(teams, 2): print game >>> ('Packers', '49ers') >>> ('Packers', 'Ravens') >>> ('Packers', 'Patriots') >>> ('49ers', 'Ravens') >>> ('49ers', 'Patriots') >>> ('Ravens', 'Patriots') False == True
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!