我的素数列表文件是CSV格式的,分隔符是逗号,素数的数据高达50000。该文件还具有随机换行符。你知道吗
问题:49999是文件中最大的数字,但是primes_list
中最大的元素是9973!你知道吗
[稍后,Primes
列表中的每个素数都将转换为long
类型,并使用for循环中的值。for prime in Primes
]
因此,我的问题是,我用下面最小的python代码做错了什么?你知道吗
Python版本是2.76,运行在Linux Mint 17上。你知道吗
修改后的代码
import csv
def factorise()
primes=[]
with open(primefile,'r') as csvfile:
primes_data=csvfile.read().replace('\n','').split(',')
primes=primes_data
print('Number of elements is: '+str(len(primes)))
print('First element is: '+primes[0])
print('Last element is: '+primes[-1])
csvfile.close()
print('Largest element is: '+max(primes))
输出示例
Number of elements is: 5134
First element is: 2
last element is: 49999
Largest element is: 9973
那么9973有什么特别之处呢?你看过文件了吗?有新的一行吗?你知道吗
无论如何,您可能想要的是csv.reader(),而不是标准IO.read读取()
我没有你的来源,所以我不能测试这个,但它似乎应该工作。你知道吗
编辑:修正了几个愚蠢的错误
相关问题 更多 >
编程相关推荐