python标准库中是否有使用隐藏内置变量名的python代码?
[不包括任何模拟内置的测试代码 考虑到随着时间的推移已经添加了许多内置代码,如果有多次出现,我会接受一个答案,显示在该内置代码存在之后创建的模块或一些代码 我提出这一问题的理由是,在python邮件列表上发布了一条消息后,一些回复表明python社区的一些成员认为 当任何其他名称也可以使用时,使用隐藏内置的变量名是完全合理的python标准库中是否有使用隐藏内置变量名的python代码?,python,Python,[不包括任何模拟内置的测试代码 考虑到随着时间的推移已经添加了许多内置代码,如果有多次出现,我会接受一个答案,显示在该内置代码存在之后创建的模块或一些代码 我提出这一问题的理由是,在python邮件列表上发布了一条消息后,一些回复表明python社区的一些成员认为 当任何其他名称也可以使用时,使用隐藏内置的变量名是完全合理的 我想用标准库来衡量这种做法在各种Python开发人员中有多普遍。我最常使用的内置代码是id,这两者都是因为它作为变量名非常有用,而且内置代码很少被调用。快速查看2.7标准库
我想用标准库来衡量这种做法在各种Python开发人员中有多普遍。我最常使用的内置代码是
id
,这两者都是因为它作为变量名非常有用,而且内置代码很少被调用。快速查看2.7标准库可以发现许多用途:
aifc.py: if id == marker[0]:
aifc.py: id = _read_short(chunk)
aifc.py: if id == self._markers[i][0]:
aifc.py: if id == marker[0]:
difflib.py: id = ' id="%s%s"' % (self._prefix[side],linenum)
difflib.py: id = ''
nntplib.py: id = ''
nntplib.py: id = words[2]
nntplib.py: resp, nr, id = self.statparse(resp)
pdb.py: id = idstring[0].strip()
pdb.py: id = idstring[1].strip()
pdb.py: if id == '': return failed
platform.py: id = values[2]
platform.py: id = ''
platform.py: id = l[1]
platform.py: id = _id
str
、list
和int
还有很多用法:
Cookie.py: str = str[1:-1]
mailcap.py: str = os.environ['MAILCAPS']
mimetools.py: str = self.typeheader
mimetools.py: str = 'text/plain'
mimetools.py: str = str[:i]
mimetools.py: str = self.plisttext
mimetools.py: str = str[1:]
mimetools.py: str = str[end:]
rfc822.py: str = m.getheader(name)
rfc822.py: str = m.getrawheader(name)
smtplib.py: str = ""
smtplib.py: str = '%s%s' % (cmd, CRLF)
smtplib.py: str = '%s %s%s' % (cmd, args, CRLF)
sre_parse.py: pattern.str = str
xmllib.py: str = res.group(1)
xmllib.py: str = chr(int(str[2:], 16))
xmllib.py: str = chr(int(str[1:]))
xmllib.py: str = self.entitydefs[str]
xmllib.py: str = '&' + str + ';'
uuid.py: int = long(hex, 16)
uuid.py: int = long(('%02x'*16) % tuple(map(ord, bytes)), 16)
uuid.py: int = ((time_low << 96L) | (time_mid << 80L) |
SimpleHTTPServer.py: list = os.listdir(path)
StringIO.py:list = f.readlines()# list of f.readline() results until EOF
StringIO.py: list = f.readlines()
anydbm.py: list = d.keys() # return a list of all existing keys (slow!)
asynchat.py: self.list = deque()
asynchat.py: self.list = deque(list)
bdb.py: list = self.breaks[filename]
cgi.py: list = None
cgi.py: list = traceback.format_tb(tb, limit) + \
code.py: list = traceback.format_exception_only(type, value)
code.py: list = traceback.format_list(tblist)
dircache.py: cached_mtime, list = cache[path]
dircache.py: cached_mtime, list = -1, []
dircache.py: list = os.listdir(path)
mailbox.py: # list = map(long, filter(pat.match, os.listdir(self.dirname)))
mailbox.py: list = os.listdir(self.dirname)
mailbox.py: list = filter(pat.match, list)
mailbox.py: list = map(long, list)
mhlib.py:list = mh.listfolders() # names of top-level folders
mhlib.py:list = mh.listallfolders() # names of all folders, including subfolders
mhlib.py:list = mh.listsubfolders(name) # direct subfolders of given folder
mhlib.py:list = mh.listallsubfolders(name) # all subfolders of given folder
mhlib.py:list = f.listmessages() # list of messages in folder (as numbers)
mhlib.py:list = f.parsesequence(seq) # parse msgs syntax into list of messages
mhlib.py: list = []
mhlib.py: list = map(int, stuff.split())
multifile.py: list = []
nntplib.py: list = []
nntplib.py: resp, list = self.longcmd('LIST', file)
nntplib.py: resp, list = self.longcmd(line, file)
pickle.py: list = stack[-1]
pickle.py: list = stack[mark - 1]
pipes.py: list = []
poplib.py: list = []; octets = 0
pstats.py: width, list = self.get_print_list(amount)
pstats.py: width, list = self.get_print_list(amount)
pstats.py: width, list = self.get_print_list(amount)
rexec.py: list = []
rfc822.py: list = m.getaddrlist(name)
shelve.py: list = d.keys() # a list of all existing keys (slow!)
socket.py: list = []
telnetlib.py: list = list[:]
traceback.py: list = []
traceback.py: list = []
traceback.py: list = ['Traceback (most recent call last):\n']
traceback.py: list = list + format_tb(tb, limit)
traceback.py: list = []
traceback.py: list = list + format_exception_only(etype, value)
traceback.py: list = []
xdrlib.py: list = []
xdrlib.py: list = []
Cookie.py:str=str[1:-1]
mailcap.py:str=os.environ['MAILCAPS']
mimetools.py:str=self.typeheader
mimetools.py:str='text/plain'
mimetools.py:str=str[:i]
mimetools.py:str=self.plisttext
mimetools.py:str=str[1:]
mimetools.py:str=str[end:]
rfc822.py:str=m.getheader(名称)
rfc822.py:str=m.getrawheader(名称)
smtplib.py:str=“”
smtplib.py:str='%s%s'(cmd,CRLF)
smtplib.py:str=“%s%s%s%”(cmd、args、CRLF)
sre_parse.py:pattern.str=str
xmllib.py:str=res.group(1)
xmllib.py:str=chr(int(str[2:],16))
xmllib.py:str=chr(int(str[1:]))
xmllib.py:str=self.entitydefs[str]
xmllib.py:str='&'+str+';'
uuid.py:int=long(十六进制,16)
uuid.py:int=long((“%02x”*16)%tuple(映射(ord,字节)),16)
uuid.py:int=((time\u low内置I最常用的阴影是id
,这两个原因都是因为它作为变量名非常有用,而且内置I很少被调用。快速查看2.7标准库发现了一些用途:
aifc.py: if id == marker[0]:
aifc.py: id = _read_short(chunk)
aifc.py: if id == self._markers[i][0]:
aifc.py: if id == marker[0]:
difflib.py: id = ' id="%s%s"' % (self._prefix[side],linenum)
difflib.py: id = ''
nntplib.py: id = ''
nntplib.py: id = words[2]
nntplib.py: resp, nr, id = self.statparse(resp)
pdb.py: id = idstring[0].strip()
pdb.py: id = idstring[1].strip()
pdb.py: if id == '': return failed
platform.py: id = values[2]
platform.py: id = ''
platform.py: id = l[1]
platform.py: id = _id
str
、list
和int
还有很多用法:
Cookie.py: str = str[1:-1]
mailcap.py: str = os.environ['MAILCAPS']
mimetools.py: str = self.typeheader
mimetools.py: str = 'text/plain'
mimetools.py: str = str[:i]
mimetools.py: str = self.plisttext
mimetools.py: str = str[1:]
mimetools.py: str = str[end:]
rfc822.py: str = m.getheader(name)
rfc822.py: str = m.getrawheader(name)
smtplib.py: str = ""
smtplib.py: str = '%s%s' % (cmd, CRLF)
smtplib.py: str = '%s %s%s' % (cmd, args, CRLF)
sre_parse.py: pattern.str = str
xmllib.py: str = res.group(1)
xmllib.py: str = chr(int(str[2:], 16))
xmllib.py: str = chr(int(str[1:]))
xmllib.py: str = self.entitydefs[str]
xmllib.py: str = '&' + str + ';'
uuid.py: int = long(hex, 16)
uuid.py: int = long(('%02x'*16) % tuple(map(ord, bytes)), 16)
uuid.py: int = ((time_low << 96L) | (time_mid << 80L) |
SimpleHTTPServer.py: list = os.listdir(path)
StringIO.py:list = f.readlines()# list of f.readline() results until EOF
StringIO.py: list = f.readlines()
anydbm.py: list = d.keys() # return a list of all existing keys (slow!)
asynchat.py: self.list = deque()
asynchat.py: self.list = deque(list)
bdb.py: list = self.breaks[filename]
cgi.py: list = None
cgi.py: list = traceback.format_tb(tb, limit) + \
code.py: list = traceback.format_exception_only(type, value)
code.py: list = traceback.format_list(tblist)
dircache.py: cached_mtime, list = cache[path]
dircache.py: cached_mtime, list = -1, []
dircache.py: list = os.listdir(path)
mailbox.py: # list = map(long, filter(pat.match, os.listdir(self.dirname)))
mailbox.py: list = os.listdir(self.dirname)
mailbox.py: list = filter(pat.match, list)
mailbox.py: list = map(long, list)
mhlib.py:list = mh.listfolders() # names of top-level folders
mhlib.py:list = mh.listallfolders() # names of all folders, including subfolders
mhlib.py:list = mh.listsubfolders(name) # direct subfolders of given folder
mhlib.py:list = mh.listallsubfolders(name) # all subfolders of given folder
mhlib.py:list = f.listmessages() # list of messages in folder (as numbers)
mhlib.py:list = f.parsesequence(seq) # parse msgs syntax into list of messages
mhlib.py: list = []
mhlib.py: list = map(int, stuff.split())
multifile.py: list = []
nntplib.py: list = []
nntplib.py: resp, list = self.longcmd('LIST', file)
nntplib.py: resp, list = self.longcmd(line, file)
pickle.py: list = stack[-1]
pickle.py: list = stack[mark - 1]
pipes.py: list = []
poplib.py: list = []; octets = 0
pstats.py: width, list = self.get_print_list(amount)
pstats.py: width, list = self.get_print_list(amount)
pstats.py: width, list = self.get_print_list(amount)
rexec.py: list = []
rfc822.py: list = m.getaddrlist(name)
shelve.py: list = d.keys() # a list of all existing keys (slow!)
socket.py: list = []
telnetlib.py: list = list[:]
traceback.py: list = []
traceback.py: list = []
traceback.py: list = ['Traceback (most recent call last):\n']
traceback.py: list = list + format_tb(tb, limit)
traceback.py: list = []
traceback.py: list = list + format_exception_only(etype, value)
traceback.py: list = []
xdrlib.py: list = []
xdrlib.py: list = []
Cookie.py:str=str[1:-1]
mailcap.py:str=os.environ['MAILCAPS']
mimetools.py:str=self.typeheader
mimetools.py:str='text/plain'
mimetools.py:str=str[:i]
mimetools.py:str=self.plisttext
mimetools.py:str=str[1:]
mimetools.py:str=str[end:]
rfc822.py:str=m.getheader(名称)
rfc822.py:str=m.getrawheader(名称)
smtplib.py:str=“”
smtplib.py:str='%s%s'(cmd,CRLF)
smtplib.py:str=“%s%s%s%”(cmd、args、CRLF)
sre_parse.py:pattern.str=str
xmllib.py:str=res.group(1)
xmllib.py:str=chr(int(str[2:],16))
xmllib.py:str=chr(int(str[1:]))
xmllib.py:str=self.entitydefs[str]
xmllib.py:str='&'+str+';'
uuid.py:int=long(十六进制,16)
uuid.py:int=long((“%02x”*16)%tuple(映射(ord,字节)),16)
uuid.py:int=((时间
- 平台模块有几个
id
作为变量名的用法
- 许多其他模块使用
id
作为变量名
- pickle使用
len
作为变量名
- uuid使用
hex
作为变量名
- dom.xmlbuilder使用
过滤器
作为变量名
- 等等
在空格之间搜索内置名称会有所帮助。
- 平台模块有几个
id
作为变量名的用法
- 许多其他模块使用
id
作为变量名
- pickle使用
len
作为变量名
- uuid使用
hex
作为变量名
- dom.xmlbuilder使用
过滤器
作为变量名
- 等等
对空格之间的内置名称进行目录搜索会有所帮助。检测到这种情况(W0622);最好运行它(关闭所有其他规则)与Python的标准库相反。在函数内部将变量命名为str
,list
等没有问题。请记住您所做的。@JBernardo。问题是,这会使它更难阅读,更难维护,并可能导致难以跟踪错误。我很惊讶您得到了答案——这不是问题吗应该进行哪些操作?@Gerrat不总是这样。file
是文件的最佳名称(因为它已弃用),在一个有2行或3行的函数中,list
可能是列表的最佳名称…id
是一个非常常见的名称,因为它很少使用。检测到这种类型的东西(W0622);您最好的选择可能是运行它(所有其他规则均已关闭)与Python的标准库相反。在函数内部将变量命名为str
,list
等没有问题。请记住您所做的。@JBernardo。问题是,这会使它更难阅读,更难维护,并可能导致难以跟踪错误。我很惊讶您得到了答案——这不是问题吗应该进行的事情有哪些?@Gerrat不总是这样。file
是文件的最佳名称(因为它已被弃用),在一个有2行或3行的函数中,list
可能是列表的最佳名称…id
是一个非常常见的名称,因为它很少使用。我将在webbrowser
、gzip
、imaplib
等中添加open
,它在模块级和类级都有相当适当的阴影。感谢您发布这篇文章我很震惊有这么多