来自庞新良的问题
用python将“apple苹果橘子orange”,英文和汉字区分开来输出
用python将“apple苹果橘子orange”,英文和汉字区分开来输出
3回答
2020-03-10 19:15
用python将“apple苹果橘子orange”,英文和汉字区分开来输出
用python将“apple苹果橘子orange”,英文和汉字区分开来输出
#-*-coding:utf-8-*-
importstring
mystring='apple苹果橘子orange'
english=[]
chinese=[]
foriinmystring.decode('utf-8'):
ifiinstring.ascii_letters:
english.append(i)
else:
chinese.append(i)
print'English:'+''.join(english)
print'Chinese:'+''.join(chinese)
那個中文是幾個index呢?其實這個題目中漢字的位置是韓語,還要檢索文字數目,韓語一個字是2個index,所以用len的話,出來的是index數,而不是字數,所以我最先想用指定INDEX位置來做的,問的有些啰嗦了,謝謝還有foriinmystring.decode('utf-8'):ifiinstring.ascii_letters:這兩行是什麽意思呢?謝謝
mystring.decode('utf-8')这句是把原文转换成unicode,这样字符串长度对应的是正确的文字数目。你可以mystring=mystring.decode('utf-8')之后再用index来做string.ascii_letters就是英文字母[A-Za-z]