鱼C论坛

 找回密码
 立即注册
查看: 1803|回复: 4

[已解决]python tab问题

[复制链接]
发表于 2020-11-22 21:49:48 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
list1 = []
for x in range(10):
    for y in range(10):
        if x%2 == 0:
            if y%2 != 0:
                list1.append((x,y))
print(list1)


list1 = []
for x in range(10):
    for y in range(10):
        if x%2 == 0:
            if y%2 != 0:
                list1.append((x,y))
    print(list1)

为什么这里多一个tab打印出来的结果截然不同
最佳答案
2020-11-23 09:28:48
python中严格控制tab/空格,因为python中是根据缩进来控制程序层次的 ,不同的缩进属于不同的层次,同一缩进属于同一层次
第一种写法中,print与for x in range(10)是同一缩进,属于同一层次,即执行完for x循环后,再执行print
第二种写法中,print与for y in rangge(10)是同一缩进,属于同一层次,即在for x循环内,执行完 for y 循环后,执行print
运行结果当然不一样啦
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2020-11-22 21:53:47 | 显示全部楼层
缩进不一样了呗
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-11-22 23:58:01 | 显示全部楼层
上面的print是在X的循環里,下面的是Y里,Y循環會結束10次,而X只會結束一次
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-11-23 09:28:48 | 显示全部楼层    本楼为最佳答案   
python中严格控制tab/空格,因为python中是根据缩进来控制程序层次的 ,不同的缩进属于不同的层次,同一缩进属于同一层次
第一种写法中,print与for x in range(10)是同一缩进,属于同一层次,即执行完for x循环后,再执行print
第二种写法中,print与for y in rangge(10)是同一缩进,属于同一层次,即在for x循环内,执行完 for y 循环后,执行print
运行结果当然不一样啦
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-11-25 11:04:07 | 显示全部楼层
谢谢大家,懂了
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-5-20 11:32

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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