鱼C论坛

 找回密码
 立即注册
查看: 2112|回复: 5

[已解决]python函数

[复制链接]
发表于 2022-6-27 10:54:00 | 显示全部楼层 |阅读模式
3鱼币
def mysql():
    ss=10
    i=0
    while i <= ss:
        i=i+1
        return i
print(mysql())

我想让print(mysql())这段代码 显示1到10 而不是显示10之后还有给none  
最佳答案
2022-6-27 10:54:01
很简单,用yield返回
def mysql():
    ss=10
    i=0
    while i < ss:
        i+=1
        yield i
print(list(mysql()))

最佳答案

查看完整内容

很简单,用yield返回
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2022-6-27 10:54:01 | 显示全部楼层    本楼为最佳答案   
很简单,用yield返回
def mysql():
    ss=10
    i=0
    while i < ss:
        i+=1
        yield i
print(list(mysql()))
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2022-6-27 11:10:30 | 显示全部楼层
直接在函数里面打印i就可以了,return的话,函数就直接结束了
def mysql():
    ss=10
    i=0
    while i < ss:
        i=i+1
        print(i)
mysql()
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2022-6-27 11:15:34 | 显示全部楼层
但是 我要把 i 输出到列表里面  lb.append(mysql()) 然后使用print 打印lb  还是会出现 none
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2022-6-27 11:33:41 | 显示全部楼层
不明白你的需求是什么,你把你的代码跟输出发上来吧,函数只要没有返回值,就是会返回None啊,但是你这个是有返回值的
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 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)
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-11-17 18:43

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表