我有一个程序,每行读取3个字符串50000.然后做其他事情.读取文件并转换为整数的部分占总运行时间的80%.
我的代码段如下:
import time
file = open ('E:/temp/edges_big.txt').readlines()
start_time = time.time()
for line in file[1:]:
label1, label2, edge = line.strip().split()
# label1 = int(label1); label2 = int(label2); edge = float(edge)
# Rest of the loop deleted
print ('processing file took ', time.time() - start_time, "seconds")
Run Code Online (Sandbox Code Playgroud)
以上大约需要0.84秒.现在,当我取消注释该行
label1 = int(label1);label2 = int(label2);edge = float(edge)
Run Code Online (Sandbox Code Playgroud)
运行时间上升到大约3.42秒.
输入文件的格式为:str1 str2 str3每行
功能int()和float()那个慢吗?我怎么能优化这个?