相关疑难解决方法(0)

如何使用NLTK tokenizer摆脱标点符号?

我刚刚开始使用NLTK,我不太明白如何从文本中获取单词列表.如果我使用nltk.word_tokenize(),我会得到一个单词和标点符号列表.我只需要单词代替.我怎样才能摆脱标点符号?也word_tokenize没有多话来:点加到硬道理.

python nlp tokenize nltk

111
推荐指数
8
解决办法
15万
查看次数

从python中的字符串中剥离不可打印的字符

我用来跑

$s =~ s/[^[:print:]]//g;
Run Code Online (Sandbox Code Playgroud)

在Perl上摆脱不可打印的字符.

在Python中没有POSIX正则表达式类,我不能写[:print:]让它意味着我想要的东西.我知道在Python中无法检测字符是否可打印.

你会怎么做?

编辑:它也必须支持Unicode字符.string.printable方式很乐意将它们从输出中剥离出来.对于任何unicode字符,curses.ascii.isprint都将返回false.

python string non-printable

81
推荐指数
9
解决办法
11万
查看次数

在Python中没有[]的列表理解

加入清单:

>>> ''.join([ str(_) for _ in xrange(10) ])
'0123456789'
Run Code Online (Sandbox Code Playgroud)

join 必须采取迭代.

显然,join这个论点是[ str(_) for _ in xrange(10) ],这是一个列表理解.

看这个:

>>>''.join( str(_) for _ in xrange(10) )
'0123456789'
Run Code Online (Sandbox Code Playgroud)

现在,join这个论点只是str(_) for _ in xrange(10),不[],但结果是一样的.

为什么?是否str(_) for _ in xrange(10)也会产生一个列表或一个可迭代?

python list-comprehension

76
推荐指数
4
解决办法
1万
查看次数

如何使用.translate()从Python 3.x中的字符串中删除标点符号?

我想使用.translate()方法从文本文件中删除所有标点符号.它似乎在Python 2.x下运行良好,但在Python 3.4下似乎没有做任何事情.

我的代码如下,输出与输入文本相同.

import string
fhand = open("Hemingway.txt")
for fline in fhand:
    fline = fline.rstrip()
    print(fline.translate(string.punctuation))
Run Code Online (Sandbox Code Playgroud)

python python-3.x

70
推荐指数
3
解决办法
8万
查看次数

如何从字符串中删除标点符号?

对于这个问题的30秒内希望得到答案,我特意寻找C#

但在一般情况下,删除任何语言标点符号的最佳方法是什么?

我应补充一点:理想情况下,解决方案不需要您枚举所有可能的标点符号.

相关:Python中的条带标点符号

c# string

64
推荐指数
7
解决办法
7万
查看次数

完整的 Python 标点符号集(不仅仅是 ASCII)

是否有包含我们可能经常遇到的所有标点符号的列表或库?

通常我使用string.punctuation,但其中不包含一些标点符号,例如:

>>> "'" in string.punctuation
True
>>> "’" in string.punctuation
False
Run Code Online (Sandbox Code Playgroud)

python string unicode

41
推荐指数
2
解决办法
4291
查看次数

从Unicode格式的字符串中删除标点符号

我有一个函数,从字符串列表中删除标点符号:

def strip_punctuation(input):
    x = 0
    for word in input:
        input[x] = re.sub(r'[^A-Za-z0-9 ]', "", input[x])
        x += 1
    return input
Run Code Online (Sandbox Code Playgroud)

我最近修改了我的脚本以使用Unicode字符串,所以我可以处理其他非西方字符.当遇到这些特殊字符并且只返回空的Unicode字符串时,此函数会中断.如何从Unicode格式的字符串中可靠地删除标点符号?

python unicode

40
推荐指数
4
解决办法
2万
查看次数

Python正则表达式,删除除unhenode字符串的连字符之外的所有标点符号

我有这个代码从正则表达式字符串中删除所有标点符号:

import regex as re    
re.sub(ur"\p{P}+", "", txt)
Run Code Online (Sandbox Code Playgroud)

如何更改它以允许连字符?如果你能解释一下你是如何做到的,那就太好了.我明白在这里,如果我错了,请纠正我,在标点后加上任何东西.

python regex string

24
推荐指数
2
解决办法
5万
查看次数

如何在Python中替换字符串中的标点符号?

我想用Python中的字符串中的"" 替换(而不是删除)所有标点字符.

是否有以下口味的效果?

text = text.translate(string.maketrans("",""), string.punctuation)
Run Code Online (Sandbox Code Playgroud)

python string replace

17
推荐指数
2
解决办法
3万
查看次数

如何检查句子是否包含Python中的某个单词然后执行操作?

假设我问用户原始输入,他们说:"这是一条消息." 如果该原始输入包含单词"message",则它将在此之后执行操作.我能看出这是怎么做到的吗?

python input

7
推荐指数
1
解决办法
5万
查看次数