![](/img/trans.png)
[英]Python string literals - including single quote as well as double quotes in string
[英]python string including double quote character
我輸入了由字符組成的字符串,包括雙引號和單引號“和”
B@SS$*JU(PQ
AD&^%$^@!$
%()%@@DDSFD"*")(#
ABD*E@(%J^&@
但是,當我從文本文件打開上面的輸入並打印它時,第三行中的雙引號打印為\\ xe2 \\ x80 \\ x9d
我的目標是做一個簡單的字符計數:
B 2
@ 3
S 2
$ 3
etc.
所以我希望能夠輸出
" 3
在上面的列表中。 我應該用一些東西替換雙引號,以便我可以計算它們並打印掉計數嗎?
非常感謝。
\\ XE2 \\ X80 \\ x9d
是“特殊”雙引號的unicode值。 您可以從UTF-8解碼為Unicode,將其轉換為“單個”Unicode字符。
>>> print "\xe2\x80\x9d".decode("utf-8")
”
>>> len("\xe2\x80\x9d".decode("utf-8"))
1
如果您使用的是Python 3:
>>> print(b"\xe2\x80\x9d".decode('utf8'))
”
>>> len(b"\xe2\x80\x9d".decode("utf-8"))
1
因此,對於您正在計算的文件(在Python 2中):
from collections import defaultdict
with open("filename", 'r') as f:
for text in f:
decoded = text.decode("utf-8")
count = defaultdict(int)
for i in decoded:
count[i] += 1
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.