2017-09-24 3 views
0

Kann mir bitte jemand erklären, was diese spezifischen Codezeilen bedeuten?Lambda Binary Calculator

convert = lambda b: str(int(b, 2)) 

convert = lambda d: bin(int(d))[2:] 

Ich mag wirklich auch wissen, was ist das 2 bedeuten, und das 2: und wie es funktioniert, da ich mit Tutorials zu verstehen versuchen, und kann nicht verstehen.

Antwort

0

Von der Syntax ich rate, dass Sie Python verwenden. Hier ist ein Hinweis. In diesem Fall ist die erste Anweisung

convert = lambda b: str(int(b, 2)) 

auch als

def convert(b): str(int(b,2)) 

finden Sie in der Python-Dokumentation für lambda geschrieben werden konnte.

Die Python-Dokumentation für int erklärt die Bedeutung der 2 hier. Die zweite Anweisung verwendet bin, die eine Zeichenfolge zurückgibt. Die [2:] gibt eine Teilzeichenfolge dieser Zeichenfolge zurück.

Eine gute Möglichkeit, dies besser zu verstehen, besteht darin, den Python-Interpreter interaktiv auszuführen und nur einige Ausdrücke einzugeben. Sie werden viel lernen, wenn Sie es tun.

$ 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