有人可以帮我解释一下这些Python程序:
b =input("What number would you like to convert into Binary? ")
convert = lambda d: bin(int(d)) [2:]
print(b + " is " + convert(b) + " in Binary")
以及这些代码行:
b = input("What Binary number would you like to convert into Decimal? ")
convert= lambda b: str(int(b, 2))
print(b + " is " + convert(b) + " in Decimal")
答案 0 :(得分:3)
lambda
表达式是一种定义短函数的方法,例如
f = lambda x: x**2 # e.g. f(2) == 4
相当于
def f(x):
return x**2
int(d)
将d
转换为整数。 bin(...)
获取该整数并将其转换为二进制字符串,如下所示:
bin(int(3)) == '0b11'
请注意,前两个字符0b
并不是数字的一部分,因此我们使用切片表示法[2:]
从索引2
开始返回所有内容:
'0b11'[2:] == '11'
最后,int
的可选第二个参数设置了应该用于转换参数的基数;在这种情况下,基础2
(二进制):
int('11', 2) == 3
您也可以将此用于其他基地,例如16
(十六进制):
int('11', 16) == 17
答案 1 :(得分:0)
十进制到二进制:
bin(124)
这将给出值'0b1111100'
二进制到十进制:
int('0b1111100', 2)
这将给出值124
答案 2 :(得分:0)
十进制到二进制转换 如果n = 5
bin=lambda x : format(x,'b')
print(bin(n))
第一个语句将使bin为一个函数,该函数将接受一个参数并将其转换为二进制,格式用于将int转换为二进制和lambda以获取二进制数字。
这将帮助您打印二进制数字