我是编程语言和学习Python的新手。首先,我如何有效,快速地学习Python编程语言?
其次,你能帮忙运行下面的程序吗?任何反馈都将受到高度赞赏。欢呼声。
LocalDateTime end = tend.getLocalDateTime();
// if you need these:
LocalDate endDate = end.toLocalDate();
LocalTime endTime = end.toLocalTime();
// to display:
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("uuuu-MM-dd HH:mm");
String stringEnd = formatter.format(end);
5.0
7.5
6.75
4.0
追踪(最近一次通话): 文件" D:/Study/Python/page116.py" ;,第16行,in 最高=最大(results_as_float) ValueError:无法将字符串转换为float:'。'
答案 0 :(得分:0)
对第一个问题的回答取决于你如何最好地学习,不同的人以不同的方式有效和快速地学习新概念。但是一般遇到像这样的问题,并且参考official documentation学习python内置库函数,然后是其他第三方库,通常是学习python和其他编程语言的最佳方法。
至于问题,它起源于处理python如何读取文本文件。一切都被读作字符串(str
类型)。然后错误从行results += each_line
开始。您最初在第3行results
上定义为list
:results = []
,但results += each_line
使用每行的字符串(包括标点符号和换行符)在列表中执行连接( '\n'
)字符。所以results
最终看起来像:
results = ['5', '.', '0', '\n', '\n', '7', '.', '5', '\n', '\n', '6', '.', '7', '5', '\n', '\n', '4', '.', '0']
这可能不是您想要的float
数字列表中的内容。所以要解决这个问题,我们需要从文件中清除每一行python读取并去掉换行符,直到我们只有一个数字列表作为“字符串”,然后将map()
函数应用到该列表:
highest = 0
lowest = 0
results = []
result_f = open("results.txt")
for each_line in result_f:
print(each_line.strip())
results.append(each_line.strip())
result_f.close()
results = filter(None, results)
results_as_float = map(float, results)
highest = max(results)
print("Highest score is : " , highest)
现在打印:
5.0
7.5
6.75
4.0
Highest score is : 7.5
希望这有帮助。