专栏首页JasonhavenDai《Python自然语言处理》答案第三章

《Python自然语言处理》答案第三章

第三章

1

s='colorless'
s=s[:s.index('r')]+'u'+s[s.index('r'):]

2

s[:s.index('-')]

4

5

monty[::-1]可以逆置列表

6

p=r'[a-zA-Z]+'
nltk.re_show(p,'123asd456')
nltk.re_show(p,'123asd456asd')
p='[A-Z][a-z]*'
nltk.re_show(p,'123asd456asd')
nltk.re_show(p,'Aadsds123asd456asd')
p='p[aeiou]{,2}t'
nltk.re_show(p,'paat'')
nltk.re_show(p,'paat')
nltk.re_show(p,'padst')
nltk.re_show(p,'padsst')
p='\d+(\.\d+)?'
nltk.re_show(p,'2312.12345dsa')

7

9

a.
pattern = r'''(?x)  # set flag to allow verbose regexps
[][.,;"'?():-_`]        #  these are separate tokens
'''
nltk.regexp_tokenize(text, pattern)

b.
pattern =r'''(?x) # set flag to allow verbose regexps
([A-Z]\.)+ # abbreviations, e.g. U.S.A.
| [A-Z][a-z]*\s[A-Z][a-z]* # words with optional internal
| \$?\d+(\.\d+)?%? # currency and percentages, e.g. $12.40, 82%
| \d+-\d+-\d+
'''

10

11

12

13

S.split(sep=None, maxsplit=-1) -> list of strings

Return a list of the words in S, using sep as the
delimiter string.  If maxsplit is given, at most maxsplit
splits are done. If sep is not specified or is None, any
whitespace string is a separator and empty strings are
removed from the result.

14

list的方法sort是in place排序,可以改变自身,sorted方法返回排序后的list,不影响自身

18

sorted([w for w in text if w.lower().startswith('wh')])

19

result=[]
text=['a 10','b 20','c 30']
for line in text:
     ...:     w,x=tuple(line.split())
     ...:     result.append((w,x))

21

def unknown(url):
    unknown('http://www.gutenberg.org/files/11/11-h/11-h.htm')
    resp=urllib.request.urlopen('http://www.gutenberg.org/files/11/11-h/11-h.htm')
    raw=resp.read().decode('utf-8')
    words=nltk.word_tokenize(raw)
    unknown=[w for w in words if w not in wn.words()]

24

p1=r'e'
p2=r'i'
p3='o'
p4=r'[.]'
p5=r'ate'
p6=r'^s'
p7=r's'
p8=r'1'

def f(s):
    s=re.sub(p1,'3',s)
    s=re.sub(p2,'1',s)
    s=re.sub(p3,'0',s)
    s=re.sub(p4,'5w33t!')
    s=re.sub(p5,'8',s)
    s=re.sub(p6,'$',s)
    s=re.sub(p7,'5',s)
    s=re.sub(p8,'|',s)

31

saying=['After', 'all', 'is', 'said', 'and', 'done', ',', 'more', 'is', 'said', 'than', 'done', '.']
lengths=[]
for w in saying:
    lengths.append(w)

lengths=[w for w in saying]

32

silly='newly formed bland ideas are inexpressible in an infuriating way'
bland=silly.split()
from functools import reduce
s=reduce(lambda x,y:x+y,[w[1] for w in bland])
' '.join(bland)
sorted(bland)

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 自然语言处理绪论1.词法分析歧义2.两类不同的语言处理模型3.评测技术4.图灵实验5.学习姿势

    1.词法分析歧义 自然语言处理中的歧义 分词歧义,作为自然语言处理的第一个步骤。 词性标注 语法分析歧义 ...

    JasonhavenDai
  • Docker初尝试1.What is Docker?2.Try It3.Use It

    1.What is Docker? 关于Docker,网上有很多讲解,不在此处赘述,提供两个不错的学习链接,望自行学习。 Docker Github Do...

    JasonhavenDai
  • 小爬虫之爬取淘宝MM1.技术路线2.目标3.分析4.运行结果5.源码

    1.技术路线 python3 urllib re mysql sqlyog 2.目标 爬取淘女郎的MM信息 3.分析 网站:https://mm.taobao....

    JasonhavenDai
  • Hadoop之MapReduce01【自带wordcount案例】

      Mapreduce 是一个分布式运算程序的编程框架,是用户开发“基于 hadoop 的数据分析应用”的核心框架,Mapreduce 核心功能是将用户编写的业...

    用户4919348
  • Swift 使用lexicographicallyprecedes 多个参数排序

    版权声明:转载请标明出处 https://blog.csdn.net/ZY_FlyWay/article/details/89184264

    ZY_FlyWay
  • 【数据】常用API接口汇总

    下面列举了100多个国内常用API接口,并按照 笔记、出行、词典、电商、地图、电影、即时通讯、开发者网站、快递查询、旅游、社交、视频、天气、团队协作、图片与图像...

    陆勤_数据人网
  • 【大数据分析必备】超全国内常用API接口汇总

    下面列举了100多个国内常用API接口,并按照 笔记、出行、词典、电商、地图、电影、即时通讯、开发者网站、快递查询、旅游、社交、视频、天气、团队协作、图片与图像...

    IT派
  • 单点登录(Single Sign On)解决方案

    A 网站和 B 网站是同一家公司的关联服务。现在要求,用户只要在其中一个网站登录,再访问另一个网站就会自动登录,请问怎么实现?

    Java_老男孩
  • Jmeter(二) - 从入门到精通 - 创建测试计划(Test Plan)(详解教程)

    上一篇中宏哥已经教你把JMeter的测试环境搭建起来了,那么这一篇我们就将JMeter启动起来,一睹其芳容,首先宏哥给大家介绍一下如何来创建一个测试计划(Tes...

    北京-宏哥
  • 来和这个机器人玩玩“石头剪刀布”,享受被支配的快感吧

    我们每个人都玩过石头剪刀布,这个简单的游戏,似乎总有人特别擅长。你总觉得自己出什么,都尽在对面的掌握之中。

    代码医生工作室

扫码关注云+社区

领取腾讯云代金券