使用" len(lst)"编写文件时出错当它是空的

时间:2017-02-14 18:19:20

标签: python

我正在尝试创建一个函数但是我有以下问题:

    var thisIsTrue = TimeZoneInfo.FindSystemTimeZoneById("W. Europe Standard Time").IsDaylightSavingTime(new DateTime(2016, 10, 30, 0, 0, 0, DateTimeKind.Utc));

    var thisIsFalse = TimeZoneInfo.ConvertTimeFromUtc(new DateTime(2016, 10, 30, 0, 0, 0, DateTimeKind.Utc), TimeZoneInfo.FindSystemTimeZoneById("W. Europe Standard Time")).IsDaylightSavingTime();
在脚本中正确定义了

File "/home/python/functions.py", line 298, in function fileout.write("%i \n\n")%(len(lst_one)) TypeError: unsupported operand type(s) for %: 'NoneType' and 'int' 。我认为这是因为#lst_one仍然是空的,因此lst_one无法工作(%i也无法工作)。

有没有办法避免TypeError?

1 个答案:

答案 0 :(得分:1)

它与lst_one无关(只要“空”表示情感列表或字符串)。你有一个错位')'。fileout.write("%i \n\n") % (len(lst_one))应该是fileout.write("%i \n\n" % (len(lst_one)))

或者使用更方便的方法进行字符串格式化:
{@ 1}}按照@ juanpa.arrivillaga的评论中的建议。