私のエディター(TextMate)は、id
を他の色(変数名として使用した場合)で、通常の変数名で表示します。キーワードですか?キーワードを網かけしたくない...
id
はPythonではkeywordではありませんが、 組み込み関数 。
キーワード are :
and del from not while
as Elif global or with
assert else if pass yield
break except import print
class exec in raise
continue finally is return
def for lambda try
キーワードは無効な変数名です。以下は構文エラーになります。
if = 1
一方、id
またはtype
またはstr
などの組み込み関数は、シャドウイングできます。
str = "hello" # don't do this
Pythonからヘルプを取得することもできます。
>>> help(id)
Help on built-in function id in module __builtin__:
id(...)
id(object) -> integer
Return the identity of an object. This is guaranteed to be unique among
simultaneously existing objects. (Hint: it's the object's memory address.)
または、IPythonに質問できます
IPython 0.10.2 [on Py 2.6.6]
[C:/]|1> id??
Type: builtin_function_or_method
Base Class: <type 'builtin_function_or_method'>
String Form: <built-in function id>
Namespace: Python builtin
Docstring [source file open failed]:
id(object) -> integer
Return the identity of an object. This is guaranteed to be unique among
simultaneously existing objects. (Hint: it's the object's memory address.)
ちょうど 参照目的 :
Pythonで何かがキーワードかどうかを確認します。
>>> import keyword
>>> keyword.iskeyword('id')
False
Pythonのすべてのキーワードを確認します。
>>> keyword.kwlist
['and', 'as', 'assert', 'break', 'class', 'continue', 'def', 'del', 'Elif',
'else', 'except', 'exec', 'finally', 'for', 'from', 'global', 'if', 'import',
'in', 'is', 'lambda', 'not', 'or', 'pass', 'print', 'raise', 'return', 'try',
'while', 'with', 'yield']
それは組み込み関数です:
id(...)
id(object) -> integer
Return the identity of an object. This is guaranteed to be unique among
simultaneously existing objects. (Hint: it's the object's memory address.)