我试图从4个不同的列表中获得以下输出,我需要调用address_machine方法并将项目压缩到列表中,然后使用for循环迭代新列表,然后将它们打印到新行-->;预期产出如下:
["T Cruise","D Francis","C White"]
["2 West St","65 Deadend Cls","15 Magdalen Rd"]
["Canterbury", "Reading", "Oxford"]
["CT8 23RD", "RG4 1FG", "OX4 3AS"]
我的方法如下所示:
def address_machine(name, street_address, town, postcode):
address = "{0},{1},{2},{3}".format(name, street_address, town, postcode)
return address
print([address_machine(name, street_address, town, postcode) for name, street_address, town, postcode in
zip(["T Cruise", "D Francis", "C White"], ["2 West St", "65 Deadend Cls", "15 Magdalen Rd"],
["Canterbury", "Reading", "Oxford"], ["CT8 23RD", "RG4 1FG", "OX4 3AS"])])
这是一个问题,因为我得到的输出看起来像这样,并且都在一行上:
['T Cruise,2 West St,Canterbury,CT8 23RD', 'D Francis,65 Deadend Cls,Reading,RG4 1FG', 'C White,15 Magdalen Rd,Oxford,OX4 3AS']
我需要如何编写这个Python address_machine函数来获得预期的输出
您可以使用普通的
for
-loop或者首先创建包含所有元素的列表,然后
for
-loop来显示它而且不明白为什么要使用函数
address_machine()
,如果您希望列表得到结果,它会将列表转换为字符串将您的地址\u机器功能更改为:
您必须返回一个额外的换行符。直接返回而不是首先定义一个变量会使代码更短
相关问题 更多 >
编程相关推荐