调用属性时是否有大小写敏感问题

在VisualCode中coding学习以下代码,发现其中的st_开头的属性
最后执行时候报错,IDE自动补完时候都默认给转换成大写了,大写的时候发现执行错误,错误提示比如是:

C:\Users\test\os>python os_stat.py
os.stat(os_stat.py):
Traceback (most recent call last):
  File "os_stat.py", line 16, in <module>
    print('  Size:', stat_info.ST_SIZE)
AttributeError: 'os.stat_result' object has no attribute 'ST_SIZE'

但是把比如ST_SIZE改为小写的话就正常显示stat信息。
求助这是我的IDE设置问题还是什么问题,如何解决,谢谢!

代码如下:

#!/usr/bin/env python
# -*- coding:utf-8 -*-
# os_stat.py
import os
import sys
import time

if len(sys.argv) == 1:
    filename = __file__
else:
    filename = sys.argv[1]

stat_info = os.stat(filename)

print('os.stat({}):'.format(filename))
print('  Size:', stat_info.ST_SIZE)
print('  Permissions:', oct(stat_info.st_mode))
print('  Owner:', stat_info.st_uid)
print('  Device:', stat_info.st_dev)
print('  Created      :', time.ctime(stat_info.st_ctime))
print('  Last modified:', time.ctime(stat_info.st_mtime))
print('  Last accessed:', time.ctime(stat_info.st_atime))
阅读 5.3k
2 个回答

Python中的identifier肯定是区分大小写的。关于语法的highlight补全都是由IDE完成的。Python现在最流行的IDE应该是PyCharm

已经确认过了,pycharm中的补全提示默认就是小写的。

不知道为啥VC中的是大写,看到os的源码里面貌似也是大写的。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题