Leetcode(67)--二进制求和

给定两个二进制字符串,返回他们的和(用二进制表示)。

输入为非空字符串且只包含数字 1 和 0

输入: a = "11", b = "1"
输出: "100"

int() 函数用于将一个字符串或数字转换为整型。

class int(x, base=10)
  • x -- 字符串或数字。
  • base -- 进制数,默认十进制。
>>>int()               # 不传入参数时,得到结果0
0
>>> int(3)
3
>>> int(3.6)
3
>>> int('12',16)        # 如果是带参数base的话,12要以字符串的形式进行输入,12 为 16进制
18
>>> int('0xa',16)  
10  
>>> int('10',8)  
8

 bin() 返回一个整数 int 或者长整数 long int 的二进制表示。

>>>bin(10)
'0b1010'
>>> bin(20)
'0b10100'

所以,这道题的结果就一句话:

class Solution:
    def addBinary(self, a, b):
        """
        :type a: str
        :type b: str
        :rtype: str
        """
        return bin(int(a,2)+int(b,2))[2:]

猜你喜欢

转载自blog.csdn.net/qq_20412595/article/details/82818300