设置函数以将其结果值作为字符串返回

时间:2017-02-23 17:02:16

标签: python python-2.7 python-3.x

我的目标是让函数SRA_Accession将其值作为字符串e.g "Value1,Value2,Value3"返回到目前为止的代码

def SRA_Accession():
SRA=1293518
while (SRA < 1293618):
  SRA=SRA+1
  print "SRA"+str(SRA)
  if False:
   break

1 个答案:

答案 0 :(得分:2)

缺少制表符使得这不起作用,你需要一个返回所有内容的return语句。

def SRA_Accession():
  SRA=1293518
  my_list = []
  while (SRA < 1293618):
    SRA=SRA+1
    my_list.append("SRA"+str(SRA))
  return ','.join(my_list)

根据您编写语句的方式来判断我会说您希望使用yield语句,它自己返回每个SRA字符串。这意味着你需要在函数之外添加逗号。

def SRA_Accession():
  SRA=1293518
  while (SRA < 1293618):
    SRA=SRA+1
    yield "SRA"+str(SRA)

value = ','.join(list(SRA_Accession()))
print(value)