如何缩短文件写入的if-else代码?

时间:2018-08-30 19:09:00

标签: python

请您提出一些建议,使代码简洁:

item_avg = item/(num_ti - 1)
if item_avg < 5002 :
   tfp.write("%s\n", %item_avg)
else:
   tfp.write("%s\n", %"5001")

3 个答案:

答案 0 :(得分:1)

由于item_avg似乎是一个整数值,因此您可以使min内置函数来完成if的工作。只需在代码中打印成对的值即可。

item_avg = item/(num_ti - 1)
tfp.write(str(min(item_avg, 5001)) + '\n')

...或更简单的版本

print(min(item_avg, 5001), file = tfp)

答案 1 :(得分:0)

它认为您想使代码看起来更像Python,无需使用if语句,因此考虑到您使用的是Python 3.6+,可以通过以下方式简化此代码:

item_avg = item /(num_ti - 1)
tpf.write(f'{item_avg if item_avg < 5002 else 5001}\n')

否则,您可以使用format

item_avg = item /(num_ti - 1)
tpf.write('{}\n'.format(item_avg if item_avg < 5002 else 5001)

答案 2 :(得分:0)

它不是很多分类器,但是可以节省一行。我更喜欢使用字符串连接而不是格式化。无论哪种都可以。

if item_avg >= 5002 : item_avg = 5001 tfp.write(str(item_avg) + '\n')

相关问题