【问题标题】:How to pass list of string as function argument in python?如何在python中将字符串列表作为函数参数传递?
【发布时间】:2020-12-12 20:31:43
【问题描述】:

我有一个字符串列表,我需要将它作为参数传递给函数。

a_list = ['apple-banana','brinjal-carrot','cucumber']

function_call = fruit(a_list)

def fruit(a_list):
  print("Inside Function:")
  print(a_list)
  if(len(a_list)!=0):
     for i in a_list:
        print(i)

但是我得到的 a_list 是这样的:

['a','p','p','l','e','-','b','a','n','a','n','a',....]

我需要的是:

Inside Function:
'apple-banana'
'brinjal-carrot'
'cucumber'

我哪里出错了?

谢谢。

【问题讨论】:

  • 运行代码会得到预期的输出。你应该在声明后调用fruit
  • 我在您的代码中没有发现任何问题,只是您的示例在实际制作之前使用了fruit ;)
  • fruit func definition n 尝试之后将呼叫移至fruit function
  • 您的代码似乎没有问题......它工作得很好
  • 不相关,但if(len(a_list)!=0):可以缩短为if a_list:,无论如何都是多余的(如果列表为空,则循环不会执行,如果不可迭代,len部分也会失败)。

标签: python string list function parameters


【解决方案1】:

去掉多余的代码,有一些亮点:

a_list = ['apple-banana','brinjal-carrot','cucumber']

def fruit(a_list):       # no need to check for the len or if the a_list exists, the for loop takes care of that
    for i in a_list:           
        print(i)
        
fruit(a_list) # your function is not returning anything so no point of assigning 

输出:

apple-banana                                                                                                                                                                
brinjal-carrot                                                                                                                                                              
cucumber

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-06-06
    • 2019-02-05
    • 1970-01-01
    • 1970-01-01
    • 2023-02-04
    • 2014-08-13
    • 2020-05-01
    • 1970-01-01
    相关资源
    最近更新 更多