代码之家  ›  专栏  ›  技术社区  ›  stefanB

如何在python中将字符串与二进制值连接起来?

  •  4
  • stefanB  · 技术社区  · 16 年前

    sep = 0x1
    data = ["abc","def","ghi","jkl"]
    

    "abc0x1def0x1ghi0x1jkl"

    3 回复  |  直到 16 年前
        1
  •  10
  •   pdc    16 年前

    joined = '\x01'.join(data) 
    

    \x01

        2
  •  3
  •   ricree    16 年前

    chr()函数的作用是将变量转换为具有所需二进制值的字符串。

    >>> sep = 0x1
    >>> sepc = chr(sep)
    >>> sepc
    '\x01'
    

    >>> data = ['abc']*3
    >>> data
    ['abc', 'abc', 'abc']
    >>> sepc.join(data)
    'abc\x01abc\x01abc'
    
        3
  •  0
  •   Adil B Cleve Green    7 年前

    我知道这不是最好的方法,但对于同一个问题,另一种在不同背景下可能有用的方法是:

    >>> x=(str(bin(0b110011000)))
    >>> b=(str(bin(0b11111111111)))
    >>> print(x+b)
    0b1100110000b11111111111
    

    如果需要,可以使用slice函数删除每个字符串的最左侧两位(即0b pad) [2:] 值为2个作品:

    >>> x=(str(bin(0b110011000)[2:]))
    >>> b=(str(bin(0b11111111111)[2:]))
    >>> print(x+b)
    11001100011111111111