同样的代码,在.PY文件和python shell里运行为什么结果不一样 50
[xforxinos.listdir('D:\\')ifos.path.isdir(x)]这行代码,如果保存为.py文件,那么会正常输出D盘下所有的文件夹。然而如果直接在...
[x for x in os.listdir('D:\\') if os.path.isdir(x)]
这行代码,如果保存为.py文件,那么会正常输出D盘下所有的文件夹。
然而如果直接在python shell下输入的话,输出结果则是空列表。
同样的代码为什么输出的结果不一样?
.py里的代码是
import os
print([x for x in os.listdir('D:\\') if os.path.isdir(x)]) 展开
这行代码,如果保存为.py文件,那么会正常输出D盘下所有的文件夹。
然而如果直接在python shell下输入的话,输出结果则是空列表。
同样的代码为什么输出的结果不一样?
.py里的代码是
import os
print([x for x in os.listdir('D:\\') if os.path.isdir(x)]) 展开
2个回答
展开全部
追问
很抱歉没有说版本,这是PYTHON3下的。
这个代码应该是没有问题的。列表生成器,for循环,判断。
然而一开始在python shell试的时候就是一直是空列表,就是偶然保存为了py文件后就可以正常运行了。
后来调试一下发现,是判断那里会出现差异。
同样的路径,在python shell里直接输入判断是否目录,都是false,而在py文件里运行,就能正常判断true。
不知道为啥……
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询