bug修改,前面提交的first commit是重构
parent
61f46f7d58
commit
705aa5efcb
|
@ -38,10 +38,32 @@ def file2str(fname):#文件转字符
|
||||||
return s
|
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赋值。
|
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:
|
for c in special_characters:
|
||||||
s = s.replace(c, ' ') # 防止出现把 apple,apple 移掉逗号后变成 appleapple 情况
|
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.replace('--', ' ')
|
||||||
s = s.strip() # 去除前后的空格
|
s = s.strip() # 去除前后的空格
|
||||||
|
|
||||||
|
@ -51,7 +73,7 @@ def remove_punctuation(s): # 这里是s是形参 (parameter)。函数被调用
|
||||||
for i in range(n): # 只有单引号前后都有英文字符,才保留
|
for i in range(n): # 只有单引号前后都有英文字符,才保留
|
||||||
if s[i] == '\'':
|
if s[i] == '\'':
|
||||||
i_is_ok = i - 1 >= 0 and i + 1 < n
|
i_is_ok = i - 1 >= 0 and i + 1 < n
|
||||||
if i_is_ok and s[i-1] in string.ascii_letters and s[i+1] in string.ascii_letters:
|
if i_is_ok and s[i - 1] in string.ascii_letters and s[i + 1] in string.ascii_letters:
|
||||||
t += s[i]
|
t += s[i]
|
||||||
else:
|
else:
|
||||||
t += s[i]
|
t += s[i]
|
||||||
|
@ -60,6 +82,7 @@ def remove_punctuation(s): # 这里是s是形参 (parameter)。函数被调用
|
||||||
return s
|
return s
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
def sort_in_descending_order(lst):# 单词按频率降序排列
|
def sort_in_descending_order(lst):# 单词按频率降序排列
|
||||||
lst2 = sorted(lst, reverse=True, key=lambda x: (x[1], x[0]))
|
lst2 = sorted(lst, reverse=True, key=lambda x: (x[1], x[0]))
|
||||||
return lst2
|
return lst2
|
||||||
|
|
Loading…
Reference in New Issue