我正在尝试将int
转换为二进制字符串。使用bin()
函数将非常容易,但是在使用Jython 2.5.2
的JES中不可用。
我尝试使用此:
def convertToBinary(n):
string = ''
if n > 1:
convertToBinary(n//2)
string = string + str(n%2)
print string
dec = 34
convertToBinary(dec)
print()
但是str()
未进行转换。我尝试删除str
,以为n % 2
已经是一个字符串,但是不行。
有什么想法吗?
您可以使用三元运算。
def convertToBinary(n):
s = ""
if n > 1:
convertToBinary(n // 2)
s = s + ("0" if n % 2 == 0 else "1")
print(s)
或者,您可以使用Java将整数转换为字符串的方式。
import java.lang
def convertToBinary(n):
s = ""
if n > 1:
convertToBinary(n // 2)
s = s + java.lang.String.valueOf(n % 2)
print(s)