当我向textfile写一个变量时,为什么我会得到'none'

时间:2017-09-19 20:51:11

标签: python text-files nonetype

我的代码中出现的问题是任何变量 (在这种情况下,time和option_1)写入文本文件输出'none'作为实际文本文件中的结果。

time=print ("This is the time and date: " 
,datetime.datetime.now().strftime("%y-%m-%d-%H-%M"))
option_1=print("50p for 1 hour(S) stay")  
with open("recipt.txt", "w") as recipt:
     recipt.write("you time\n {}".format(time))
     recipt.write("the time you stayed for and your payment\n 
{}".format(option_1))
     recipt.close()

提前致谢

2 个答案:

答案 0 :(得分:2)

print函数返回None。您想构建str对象而不是print

time= "This is the time and date: " + datetime.datetime.now().strftime("%y-%m-%d-%H-%M")
option_1= "50p for 1 hour(S) stay"

答案 1 :(得分:1)

time=print ("This is the time and date: ")

在Python中,每个函数都返回一个值。如果未指定值,则返回。 print函数未指定返回值,因此返回 None 。在您的示例中,您将print的返回值( None )指定给时间变量。相反,将时间设置为等于当前日期时间。

time = datetime.datetime.now().strftime("%y-%m-%d-%H-%M")

然后连接你的print语句和当前的日期时间。

print("This is the time and date: " + time)