前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >基于Python的语料库数据处理(三)

基于Python的语料库数据处理(三)

作者头像
陆勤_数据人网
发布2020-12-14 09:56:09
6150
发布2020-12-14 09:56:09
举报

| 段洵

1393字 | 5 分钟阅读

【数据科学与人工智能】已开通Python语言社群,学用Python,玩弄数据,求解问题,以创价值。喜乐入群者,请加微信号shushengya360,扫描文末二维码,添加为好友,同时附上Python-入群。有朋自远方来,不亦乐乎,并诚邀入群,以达相互学习和进步之美好心愿。

一起来学习用Python进行语料库数据处理吧!

一、条件判断

在执行某个语句前,我们可能需要对某个条件进行判断,并根据条件判断的结果来决定是否执行该语句。这时就需要使用条件判断if。

条件判断if的基本句法为:

代码语言:javascript
复制
if <condition>:
    <statements>

在用Python进行语料库数据处理时,常用的条件判断操作符有“<”、“>”、“<=”、“>=”、“==”以及“!=”。

示例:

代码语言:javascript
复制
str1 =  'Life is short, we use Python.'

if len(str1) > 10:
    print('The string has more than 10 characters.')   # Print the sentence

str2 = 'Python'
if str2.startswith('p'):
    print(str2)         
代码语言:javascript
复制
str1 = 'Life is short, we use Python.'

if len(str1) > 30:
    print('The string has more than 30 characters.')
else:
    print('The string has less than 30 characters.')  # Print this sentence

str2 = 'Python'
if str2.startswith('p'):
    print('Yeah!')
else:
    print('Oh, no!')   
代码语言:javascript
复制
str1 = 'Python_N'

if str1.endswith('V'):
    print('This is a verb.')          # Pass
elif str1.endswith('N'):
    print('This is a noun.')          # Print 'This is a noun.'
elif str1.endswith('A'):
    print('This is an adjective.')    # Pass
elif str1.endswith('R'):
    print('This is an adverb.')       # Pass
else:
    print('This is a function word')  # Pass 

二、while循环

在编程时,可能需要重复执行某个语句,这就需要使用循环。如果需要对某个条件进行判断,以重复执行某个语句,则需要用到while循环。

while循环的基本句法为:

代码语言:javascript
复制
while <condition>:
<statements>

示例:

代码语言:javascript
复制
i = 1

while i <= 10:
 print(i)
 i += 1

三、for...in循环

如果我们需要对某个序列中的每一个元素重复执行某个语句,则需要用到for...in循环,for...in循环的基本句法为:

代码语言:javascript
复制
for i in <sequence>:
<statements>

示例:

代码语言:javascript
复制
word = 'Python'

for letter in word:
    print(letter)

代码语言:javascript
复制
word = 'Python'

for letter in word:
    print(letter.upper())  #将字母变为大写
代码语言:javascript
复制
prefix = "A"
start = 2011001
end = 2011101

for i in range(start, end):
    print(prefix + str(i))

四、读写单个文本

语料库数据大多为文本文件。在进行语料库处理时,首先要对文本进行读取。读取文本需要使用open函数。open函数读取文本的基本句法如下:

代码语言:javascript
复制
file_handle = open("file_name","r")

file_handle.close()

open()函数有多个参数,第一个参数是目标文件的路径与文件名,文件名可以是绝对地址路径或相对地址路径;第二个参数是“r”,表示读取文本(read),close()关闭文件句柄。

示例:

代码语言:javascript
复制
file_in = open("../texts/ge.txt", "r")

for line in file_in:
    print(line)              #对读取的文件进行逐行打印输出

file_in.close()

代码语言:javascript
复制
file_in = open("../texts/ge.txt", "r")

for line in file_in.readlines():       #readlines()函数可将文本读取成一个列表
    print(line)
file_in.close()

我们将文本或其他语料进行处理后,可能需要将处理结果写成文本文件。写出并保存文本依然使用open()函数。

示例:

代码语言:javascript
复制
file_in = open("../texts/ge.txt", "r")
file_out = open("../ge_lower.txt", "a") # "a"表示不会删除原文本内容,而是将新内容追加到末尾。"w"会删除原始内容,生成新文件。

for line in file_in.readlines():
    line_new = line.lower()         #变为小写
    file_out.write(line_new)        #写出

file_in.close()
file_out.close()

推荐阅读:基于Python的语料库数据处理(一)

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2020-11-28,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 数据科学与人工智能 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档