0
有人可以請解釋我那些特定的代碼行是什麼意思?Lambda二元計算器
convert = lambda b: str(int(b, 2))
convert = lambda d: bin(int(d))[2:]
我真的也想知道什麼是2的意思是,和2:它是如何工作的,因爲我想與教程,理解和無法理解。
有人可以請解釋我那些特定的代碼行是什麼意思?Lambda二元計算器
convert = lambda b: str(int(b, 2))
convert = lambda d: bin(int(d))[2:]
我真的也想知道什麼是2的意思是,和2:它是如何工作的,因爲我想與教程,理解和無法理解。
從語法我猜你正在使用Python。這裏有一個提示。在這種情況下,第一條語句
convert = lambda b: str(int(b, 2))
也可以寫成
def convert(b): str(int(b,2))
見lambda Python文檔。
int的Python文檔在這裏解釋了2的含義。
第二條語句使用bin,它返回一個字符串。 [2:]
返回該字符串的子字符串。
更好地理解這一點的好方法是以交互方式運行python解釋器並輸入一些表達式。你會學到很多,只是這樣做。
$ python
Python 2.7.12 (default, Nov 29 2016, 14:57:54)
[GCC 4.2.1 Compatible Apple LLVM 7.0.2 (clang-700.1.81)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> bin(15)
'0b1111'
>>> bin(15)[2:]
'1111'
>>> int('1111',2)
15