% python --version
Python 2.7.11 :: Anaconda 2.5.0 (64-bit)
et
zip () `for i, (a, b) in enumerate(zip(list_a, list_b)):
# Do something
Utilisez la méthode de chaîne ʻisdigit () `. Renvoie true s'il n'y a que des nombres dans la chaîne, false dans le cas contraire.
a = '100'
b = 'hoge100'
a.isdigit() # => True
b.isdigit() # => False
Vous pouvez également vérifier diverses choses avec ʻis * () `.
référence:
Chose que vous voulez faire:
a = ['2', '1', '3', '33', '22', '11']
sorted(a) # => ['1', '11', '2', '22', '3', '33']
# I need `['1', '2', '3', '11', '22', '33']
Passez ʻint () au mot-clé argument
key de
sorted () `, convertissez chaque élément (chaîne de caractères) en une valeur numérique et triez.
sorted(a, key=int) # => ['1', '2', '3', '11', '22', '33']
Une erreur se produit si la liste à trier contient une chaîne de caractères qui ne peut pas être convertie en valeur numérique. Dans ce cas, procédez comme suit.
a = ['2', '1', '3', '33', '22', '11', 'hoge', 'fuga']
sorted(a, key=lambda x: int(x) if x.isdigit() else x) # => ['1', '2', '3', '11', '22', '33', 'fuga', 'hoge']
Référence: 2. Fonctions intégrées - Documentation Python 2.7.13
Recommended Posts