如何摆脱python中字符串中的b前缀? [英] How do I get rid of the b-prefix in a string in python?
问题描述
我正在导入的一些推文在他们阅读的地方遇到了这个问题
A bunch of the tweets I am importing are having this issue where they read
b'I posted a new photo to Facebook'
我收集到 b
表示它是一个字节.但这被证明是有问题的,因为在我最终编写的 CSV 文件中, b
不会消失并且会干扰未来的代码.
I gather the b
indicates it is a byte. But this is proving problematic because in my CSV files that I end up writing, the b
doesn't go away and is interferring in future code.
有没有一种简单的方法可以从我的文本行中删除这个 b
前缀?
Is there a simple way to remove this b
prefix from my lines of text?
请记住,我似乎需要将文本编码为 utf-8,否则 tweepy 无法从网络中提取它们.
Keep in mind, I seem to need to have the text encoded in utf-8 or tweepy has trouble pulling them from the web.
这是我正在分析的链接内容:
Here's the link content I'm analyzing:
https://www.dropbox.com/s/sjmsbuhrghj7abt/new_tweets.txt?dl=0
new_tweets = 'content in the link'
代码尝试
outtweets = [[tweet.text.encode("utf-8").decode("utf-8")] for tweet in new_tweets]
print(outtweets)
错误
UnicodeEncodeError Traceback (most recent call last)
<ipython-input-21-6019064596bf> in <module>()
1 for screen_name in user_list:
----> 2 get_all_tweets(screen_name,"instance file")
<ipython-input-19-e473b4771186> in get_all_tweets(screen_name, mode)
99 with open(os.path.join(save_location,'%s.instance' % screen_name), 'w') as f:
100 writer = csv.writer(f)
--> 101 writer.writerows(outtweets)
102 else:
103 with open(os.path.join(save_location,'%s.csv' % screen_name), 'w') as f:
C:\Users\Stan Shunpike\Anaconda3\lib\encodings\cp1252.py in encode(self, input, final)
17 class IncrementalEncoder(codecs.IncrementalEncoder):
18 def encode(self, input, final=False):
---> 19 return codecs.charmap_encode(input,self.errors,encoding_table)[0]
20
21 class IncrementalDecoder(codecs.IncrementalDecoder):
UnicodeEncodeError: 'charmap' codec can't encode characters in position 64-65: character maps to <undefined>
推荐答案
你需要解码你想要一个字符串的bytes
:
you need to decode the bytes
of you want a string:
b = b'1234'
print(b.decode('utf-8')) # '1234'
这篇关于如何摆脱python中字符串中的b前缀?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!