>>> s = b'GATC'
>>> s
b'GATC'
>>> s.decode() # default UTF-8 decoding.
'GATC'
>>> s.decode('ascii')
'GATC'
编辑
根据OP下面的评论,这里是另一个例子:
>>> s=[b'GATC',b'CTAG'] # A list of byte strings
>>> s
[b'GATC', b'CTAG']
>>> s = [t.decode() for t in s] # decoding the list to Unicode
>>> s
['GATC', 'CTAG']
>>> for t in s: # iterating over the strings and characters
... for c in t:
... print(t,c)
...
GATC G
GATC A
GATC T
GATC C
CTAG C
CTAG T
CTAG A
CTAG G
如果跳过解码,会得到什么:
>>> s=[b'GATC',b'CTAG']
>>> for t in s:
... for c in t:
... print(t,c)
...
b'GATC' 71 # displays as byte strings and byte values (71 == ASCII 'G', etc.)
b'GATC' 65
b'GATC' 84
b'GATC' 67
b'CTAG' 67
b'CTAG' 84
b'CTAG' 65
b'CTAG' 71
在python2.x中,
'GATC'
是字节字符串,u'GATC'
是Unicode字符串。你知道吗在python3.x中,
'GATC'
是Unicode字符串,b'GATC'
是字节字符串。你知道吗所以在这两种情况下得到的结果(字节字符串)是相同的。你知道吗
您可以在Python 3.x中将字节字符串解码为Unicode,以获得所需的结果:
编辑
根据OP下面的评论,这里是另一个例子:
如果跳过解码,会得到什么:
相关问题 更多 >
编程相关推荐