3.27
列表是python中自然语言处理的常用数据类型,因此本节我们用其处理简单文本。
打开随意一个全英文本(如果是中文文本还需安装其他更复杂的库),这里用的是gettysburg演讲
gFile=open("gettysburg.txt", "r").read()
List1=gFile.split()
第一句的格式要注意!.read()形式才能返回一个字符串,如果没有的话只能表示打开文件。
注意这里的gFile是字符串类型!用split()函数,默认以空格为分隔符生成List1,为列表!
speech=[]#新建列表
for word in List1:#直接遍历列表元素
word=word.lower()#字母全部小写处理
word=word.strip('.,')#strip()只能删除开头或是结尾的字符
if word !='--':#删除分割出来的非字母字符
speech.append(word)#将符合条件的元素加入新列表末尾
print(' Length: %d' % len(speech))
这里的处理是获得全小写字母的元素。
unique=[]#去除以上列表中的重复元素
for word in speech:
if word not in unique:#这句话直接解决是否重复!
unique.append(word)
print('Unique Length: %d' % len(unique))
这里的处理是列表去重。
*能否利用集合去重呢?(突然的想法还没尝试,集合本身就没有重复元素捏)