<p>试试readlines,(请看这个答案:<a href="https://stackoverflow.com/questions/3277503/how-do-i-read-a-file-line-by-line-into-a-list">How do I read a file line-by-line into a list?</a>,也请看:<a href="https://stackoverflow.com/questions/16922214/reading-a-text-file-and-splitting-it-into-single-words-in-python">Reading a text file and splitting it into single words in python</a>)。你知道吗</p>
<p>哦,而且“with open()”是惯用的(与其说是try,不如说是try)</p>
<pre><code>with open("data2.txt") as ouvrir:
lines = ouvrir.readlines()
print sorted(lines)
</code></pre>
<p>假设每行包含一个单词,就完成了。你知道吗</p>
<p>假设你想把每一行看作单词(每行一个或多个单词),对每一行的单词进行排序,然后对每一行进行排序</p>
<pre><code>#open file "data2.txt" and readlines into list
#split each line into words and sort that list of sorted lines
#words = list ( list ( word ) )
with open("data2.txt") as ouvrir:
lines = ouvrir.readlines()
line_words = [ x for x in [ line.split(":") for line in lines ] ]
#line_names = [ x[0] for x in [ line.split(":") for line in lines ] ]
print sorted(line_words)
</code></pre>
<p>假设每行有一个或多个单词,您想要一个单词的排序列表?下面将嵌套的单词列表展平为单个单词列表</p>
<pre><code>#open file "data2.txt" and readlines into list
#split each line into words, flatten into single list of words
#words = list ( word )
with open("data2.txt") as ouvrir:
lecture = ouvrir.readlines()
words = [ word for line in lecture for word in line.split() ]
print sorted(words)
</code></pre>
<p>假设你的台词键:值对,例如“苹果:23”?,那么你想要一些不同的东西</p>
<p>你的程序结合了主菜(切片)系统argv[1:])打开并读取文件。你应该把这两个功能分开。这是一种修改代码的方法</p>
<pre><code>import sys
def liste(texte,entree):
if len(entree) < 1:
return "Il faut préciser le nom du fichier à traiter"
elif len(entree) > 1:
return "Un seul argument est attendu, soit le nom du fichier à traiter."
with open(texte) as ouvrir:
lecture = ouvrir.readlines()
words = [ x.split(":")[0].strip() for x in [ line.strip() for line in lecture ] ]
words = [ x for x in words if len(x) > 1 ] #filter, remove short words (blanks)
return lecture
return "Le fichier {} n'existe pas.".format(texte)
def main():
while True:
entree = sys.argv[1:]
choix = str(entree)
texte = "data2.txt"
if texte in choix:
message4 = sorted(liste(texte,entree))
print(message4)
for el in message4: print(el)
break
else:
print("Il faut préciser le nom du fichier à traiter")
break
if __name__ == "__main__":
main()
exit()
</code></pre>