在Python列表中使用插入排序时遇到问题
我得到了一个类似于以下内容的文本文件在Python列表中使用插入排序时遇到问题,python,sorting,insertion-sort,Python,Sorting,Insertion Sort,我得到了一个类似于以下内容的文本文件 hello 20 world 30 i'm 50 ok 20 def insertion_sort(): filename = input('Enter filename: ') lst = [] for line in open(filename): lst.append(int(line)) print(lst) for index in range(1,len(lst)): va
hello 20
world 30
i'm 50
ok 20
def insertion_sort():
filename = input('Enter filename: ')
lst = []
for line in open(filename):
lst.append(int(line))
print(lst)
for index in range(1,len(lst)):
value = lst[index]
leftvalue = index -1
while leftvalue >= 0 and lst[leftvalue] > value:
if value < lst[leftvalue]:
lst[leftvalue + 1] = lst[leftvalue]
lst[leftvalue] = value
leftvalue = leftvalue - 1
else:
break
return lst == insertion_sort()
我尝试使用插入排序来排列数据的数字部分。我的代码如下所示
hello 20
world 30
i'm 50
ok 20
def insertion_sort():
filename = input('Enter filename: ')
lst = []
for line in open(filename):
lst.append(int(line))
print(lst)
for index in range(1,len(lst)):
value = lst[index]
leftvalue = index -1
while leftvalue >= 0 and lst[leftvalue] > value:
if value < lst[leftvalue]:
lst[leftvalue + 1] = lst[leftvalue]
lst[leftvalue] = value
leftvalue = leftvalue - 1
else:
break
return lst == insertion_sort()
def insertion_sort():
filename=input('输入文件名:')
lst=[]
对于打开的行(文件名):
一级追加(整数(行))
打印(lst)
对于范围(1,len(lst))中的索引:
值=lst[索引]
leftvalue=索引-1
当leftvalue>=0和lst[leftvalue]>值时:
如果值
我得到以下错误。。。
ValueError:以10为基数的int()的文本无效:“Merchant\u 0 96918\n”
我已尝试使用浮点替换int,但无法将字符串转换为浮点。您无法使用以下参数获得整数:
lst.append(int(line))
如果行包含,请说“world 30”
你到底想得到什么?如果要获取数值,请尝试:
int(行分割(“”)[1])
或者更好(即使输入行中有多个空格也可以):
整个分拣过程变成:
import operator
import re
lines = {}
for line in open('tst.txt'):
reobj=re.search('(\d+)$',line)
int_key=int(reobj.group(1))
value=line[0:reobj.start()]
lines[int_key]=value
# See : http://stackoverflow.com/questions/613183/python-sort-a-dictionary-by-value?rq=1
print "Sorted : ", sorted(lines.iteritems(), key=operator.itemgetter(0))
那么,您认为字符串
Merchant_0 96918\n
应该转换为什么整数?它应该转换为数字96918那么您尝试了什么,以便提取字符串中要转换为整数的部分?您了解Python中的哪些字符串处理函数?我们已经介绍了除strip函数之外的大多数字符串函数。我正在考虑对它做一些研究,看看它在这种情况下对我有什么帮助。