tengke 发表于 2022-6-27 10:54:00

python函数

def mysql():
    ss=10
    i=0
    while i <= ss:
      i=i+1
      return i
print(mysql())

我想让print(mysql())这段代码 显示1到10 而不是显示10之后还有给none

HK666 发表于 2022-6-27 10:54:01

很简单,用yield返回

def mysql():
    ss=10
    i=0
    while i < ss:
      i+=1
      yield i
print(list(mysql()))

specail 发表于 2022-6-27 11:10:30

直接在函数里面打印i就可以了,return的话,函数就直接结束了
def mysql():
    ss=10
    i=0
    while i < ss:
      i=i+1
      print(i)
mysql()

tengke 发表于 2022-6-27 11:15:34

但是 我要把 i 输出到列表里面lb.append(mysql()) 然后使用print 打印lb还是会出现 none

specail 发表于 2022-6-27 11:33:41

不明白你的需求是什么,你把你的代码跟输出发上来吧,函数只要没有返回值,就是会返回None啊,但是你这个是有返回值的

tengke 发表于 2022-6-27 14:03:06

specail 发表于 2022-6-27 11:33
不明白你的需求是什么,你把你的代码跟输出发上来吧,函数只要没有返回值,就是会返回None啊,但是你这个是 ...

def mysql():
    ss=10
    i=0
    while i < ss:
      i=i+1
      print(i)
mysql()
sss=[]
sss.append(mysql())
print(sss)
页: [1]
查看完整版本: python函数