我不确定我尝试过的代码有什么问题但是失败了。我知道sort函数会对列表进行排序,但我不想使用sorted函数。相反,我只想使用排序。这是我的代码:
def assignment():
fname = raw_input("Enter file name: ")
if len(fname) == 0:
fname = "romeo.txt"
fh = open(fname)
lst = list()
for line in fh:
x = line.rstrip()
lst.append(x.split(" "))
for elem in lst:
print elem.sort()
assignment()
结果:
none
然而,当我尝试这段代码时,我的工作有点工作但却没有按照我想要的方式工作
def assignment():
fname = raw_input("Enter file name: ")
if len(fname) == 0:
fname = 'romeo.txt'
fh = open(fname)
lst = list()
for line in fh:
x = line.rstrip()
lst.append(x.split(" "))
for elem in lst:
print elem.sort()
print lst
assignment()
结果:
Enter file name:
None
[['a', 'b', 'c', 'd', 'e']]
Process finished with exit code 0
答案 0 :(得分:0)
您不能使用sort()对字符串元素进行排序。但是您可以这样做
for elem in lst:
print ''.join(sorted(elem))
输入:asdaa 输出:aaads
答案 1 :(得分:0)
.sort
方法对列表进行排序并且不返回任何内容(None
),如果要打印列表,则打印列表。
这应该产生预期的输出:
...
for elem in lst:
elem.sort()
print elem
...