python
python怎么把一个字符串转换为2进制??使用ord不行
只能转换一个字符
求助{:10_254:} ord 是转化 成 ASCII码,不是二进制吧 for循环试试?
a = "test"
print(' '.join(format(ord(x), 'b') for x in a)) 循环ord qiuyouzhi 发表于 2020-5-31 09:15
循环ord
不会
循环能实现以后转换回来吗 用字符串.encode来把字符串转换为字节串(python表达二进制的方式叫字节串)
要加小括号的
字符串.encode()
本帖最后由 xiaosi4081 于 2020-6-1 08:16 编辑
int (你要转换的字符串,转换成几进制)
a = "text"
print (int(a,2)) xiaosi4081 发表于 2020-6-1 07:17
int (你要转换的字符串,转换成几进制)
Traceback (most recent call last):
File "g:/Programming/Python/test.py", line 2, in <module>
print(int(a,2))
ValueError: invalid literal for int() with base 2: 'text'
报了这个错 xiaosi4081 发表于 2020-6-1 07:17
int (你要转换的字符串,转换成几进制)
这只能转换数字
不能转换文字
怎么办 heidern0612 发表于 2020-5-31 09:15
for循环试试?
可以 但怎么转换回去呢 Mike_python小 发表于 2020-6-1 08:01
可以 但怎么转换回去呢
a = "test"
def encode(s):
return ' '.join()
def decode(s):
return ''.join(])
a = encode(a)
print(a)
a = decode(a)
print(a) string = 'hello'
a = list(map(lambda x: bin(ord(x)), string))
b = list(map(lambda x: chr(int(x, 2)), a))
print(a)
print(''.join(b))
页:
[1]