嗨,我正在尝试打印此功能,但是输出带有括号和引号...像这样
('1',',12月',',1984')
def date_string(day_num, month_name, year_num):
""" Turn the date into a string of the form
day month, year
"""
date = str(day_num) , "," + month_name , "," + str(year_num)
return date
print(date_string(1, "December", 1984))
答案 0 :(得分:1)
date = str(day_num) , "," + month_name , "," + str(year_num)
使用此代码,您将创建一个元组而不是字符串。
要创建一个字符串,您有多种选择:
date = '{} {},{}'.format(day_num, month_name, year_num) # Recommended method
OR
date = '%s %s, %s' % (day_num, month_name, year_num) # Fairly outdated
根据其他答案,或使用+
进行串联。使用+
进行字符串连接并不理想,因为必须确保将每个操作数转换为字符串类型。
答案 1 :(得分:0)
问题是您需要一些逗号,
,并在其中加上加号+
:
date = str(day_num) , "," + month_name , "," + str(year_num)
这将创建一个元组而不是字符串。更改为:
date = str(day_num) + "," + month_name + "," + str(year_num)
答案 2 :(得分:0)
在创建变量,
时,尝试将+
更改为date
。这将创建一个字符串而不是一个列表。
def date_string(day_num, month_name, year_num):
"""
Turn the date into a string of the form
day month, year
"""
date = str(day_num) + ", " + month_name + ", " + str(year_num)
return date
print(date_string(1, "December", 1984))
答案 3 :(得分:0)
如果您使用的是3.6
版或更高版本的Python,则可以按照以下方式为该任务使用所谓的f字符串
def date_string(day_num, month_name, year_num):
date = f"{day_num},{month_name},{year_num}"
return date
print(date_string(1, "December", 1984)) #output: 1,December,1984
请记住,它不适用于旧版本的Python,因此请在使用前检查您的版本。如果您想进一步了解f字符串,请阅读this article。