为什么在python中有这么多“保留的内置符号”-s

时间:2013-06-25 07:49:24

标签: python keyword

我正在学习Python。到目前为止,filterid和其他字词会生成警告Warning: assignment to reserved built-in symbol。好吧,我正在设计过滤器并为每个过滤器分配 id -s,这个警告迫使我在整个地方使用下划线。

C的保留关键字是缩短的字词,例如int或者经常使用英语单词,例如volatile。我如何应对Python编程语言的极端可读性,这迫使我使自己的程序难以理解?

2 个答案:

答案 0 :(得分:8)

该警告与Python本身无关。

使用Google进行快速搜索似乎表明当您将Eclipse与PyDev一起使用时会生成警告,所以答案似乎是在PyDev文档中查找如何关闭它。

此stackoverflow问题可能有所帮助:Suppress warnings in PyDev

答案 1 :(得分:4)

这些不是保留关键字,因此 - 可以替换它们。这只是一个警告,IDE会告诉您这样做可能不是一个好主意,因为它可能会破坏将被复制粘贴到模块中的代码,并且可能会在没有完整上下文的情况下使代码混乱

以下是Python中的保留关键字(23

False (3)  class      finally    is         return
None  (3)  continue   for        lambda     try
True  (3)  def        from       nonlocal   while
and        del        global     not        with
as         elif       if         or         yield
assert     else       import     pass       exec  (2)
break      except     in         raise      print (2)

只有Python2的execprint才是合理的变量名称。我认为这是为什么它们不再在Python3中保留的部分原因。

Python的设计是可读的,因此它使用可读的英文单词作为类型名称。 id可能不是一个好主意,是的。也许listdict等应该是ListDict等等,但现在改变它已经太晚了。

如果您设计过滤器,可以将其称为Filter。同样适用于IdID