Comment avez-vous incrément de nom de fichier en Python
J'essaie de sauver un grand nombre de données qui doit être séparé dans des fichiers différents, comme
data_1.dat
data_2.dat
data_3.dat
data_4.dat
comment puis-je mettre en python?
Il est probablement trop pour de simples cas d'utilisation, mais j'ai écrit une petite bibliothèque python pour ce faire dans un thread-safe et écraser la sécurité: pypi.python.org/pypi/seqfile
OriginalL'auteur chutsu | 2011-02-21
Vous devez vous connecter pour publier un commentaire.
filename = 'data_%d.dat' % i
J'ai pris l'habitude de créer singleton tuples pour les chaînes de formatage pour supprimer les ambiguïtés syntaxiques. c'est à dire
print '%d'%(i,), s
. Elle rend également plus clair si vous ne voulez pas l'impression d'un retour à la ligne. Mais oui,% i
serait aussi travailler.Je comprends. Je suppose que pour la pure clarté, ce serait plus compréhensible pour moi:
print '{:d} {}'.format(i,s)
comme l'équivalent mais wordier version de votre exemple....OriginalL'auteur yan
itertools
😉Allez, c'est pas que beaucoup 🙂
Je ne suis pas d'accord qu'un générateur de fonction serait plus approprié, au moins pas sans en savoir plus sur le contexte de laquelle il sera utilisé. Les raisons de votre déclaration?
La même raison des fonctions nommées sont préférables à des lambdas: ils peuvent être donnés une docstring, un meilleur support de l'introspection, sont plus faciles à trouver à partir d'une trace de la pile, etc. Si ils ne sont pas créés et consommés en une seule étape, il est généralement la peine de prendre la ligne supplémentaire ou deux pour leur donner un nom propre.
Généralement vrai, mais ne semble pas s'appliquer à ce cas. Vous ne voulez pas vraiment une docstring ou de l'introspection pour cet exemple simple. Je pense lisible aurait fait souffrir quand ce qui en fait un générateur de fonction.
OriginalL'auteur Sven Marnach
Similaire à Sven de la solution, mais une mise à niveau vers une pleine générateur:
OriginalL'auteur ncoghlan
Si vous allez le itertools façon, pourquoi le mélanger avec un générateur d'expression?
OriginalL'auteur tzot