forked from mrlan/EnglishPal
bug修改,前面提交的first commit是重构
parent
61f46f7d58
commit
705aa5efcb
|
@ -38,10 +38,32 @@ def file2str(fname):#文件转字符
|
|||
return s
|
||||
|
||||
|
||||
def str2chararray(str): # 字符串转字符数组
|
||||
chararray = []
|
||||
for i in range(len(str)):
|
||||
chararray.append(str[i])
|
||||
return chararray
|
||||
|
||||
|
||||
def remove_punctuation(s): # 这里是s是形参 (parameter)。函数被调用时才给s赋值。
|
||||
special_characters = '_©~=+[]*&$%^@.,?!:;#()"“”—‘’' # 把里面的字符都去掉
|
||||
# carr = str2chararray(s) # 字符串转字符数组
|
||||
# print(carr)
|
||||
special_characters = '&_~=+[]%^@.,?!:;#()"“”—‘’|/\\<>{}' # 把里面的字符都去掉
|
||||
special_words = ('$lt', '$gt', '$') # 特殊词汇
|
||||
for c in special_characters:
|
||||
s = s.replace(c, ' ') # 防止出现把 apple,apple 移掉逗号后变成 appleapple 情况
|
||||
carr = str2chararray(s) # 字符串转字符数组
|
||||
for i, value in enumerate(carr):
|
||||
if value == '&': # 遍历替换
|
||||
carr[i] = '\''
|
||||
print('sss' + s)
|
||||
for j in range(1,5):
|
||||
if carr[i+j] in [' ','3','9']:
|
||||
carr[i + j]=''
|
||||
s = ''.join(carr) # 字符数组转字符串
|
||||
print('sss'+s)
|
||||
for w in special_words: # 替换字符串中的剩余特殊字符
|
||||
s = s.replace(w, ' ')
|
||||
s = s.replace('--', ' ')
|
||||
s = s.strip() # 去除前后的空格
|
||||
|
||||
|
@ -60,6 +82,7 @@ def remove_punctuation(s): # 这里是s是形参 (parameter)。函数被调用
|
|||
return s
|
||||
|
||||
|
||||
|
||||
def sort_in_descending_order(lst):# 单词按频率降序排列
|
||||
lst2 = sorted(lst, reverse=True, key=lambda x: (x[1], x[0]))
|
||||
return lst2
|
||||
|
|
Loading…
Reference in New Issue