小编kyr*_*nia的帖子

汇总python中的计数器列表

我想在python中总结一个计数器列表.例如总结:

counter_list = [Counter({"a":1, "b":2}), Counter({"b":3, "c":4})]
Run Code Online (Sandbox Code Playgroud)

Counter({'b': 5, 'c': 4, 'a': 1})

我可以得到以下代码来进行求和:

counter_master = Counter()
for element in counter_list:
    counter_master = counter_master + element
Run Code Online (Sandbox Code Playgroud)

但我很困惑,为什么counter_master = sum(counter_list)导致错误TypeError: unsupported operand type(s) for +: 'int' and 'Counter'?鉴于可以将计数器添加到一起,为什么不能将它们相加?

python counter python-2.7

20
推荐指数
1
解决办法
3605
查看次数

当使用nltk对单词进行标记时,防止在叛逆者处分裂

我正在使用将nltk句子分成单词.例如

 nltk.word_tokenize("The code didn't work!")
 -> ['The', 'code', 'did', "n't", 'work', '!']
Run Code Online (Sandbox Code Playgroud)

标记化可以很好地分割单词边界[即从单词中分割标点符号],但有时会过度分割,单词末尾的修饰符会被视为单独的部分.例如,didn't被拆分为部分did,n'ti've被拆分为I've.显然,这是因为这些单词在nltk正在使用的原始语料库中被分成两部分,并且在某些情况下可能是期望的.

有没有内置的方法来克服这种行为?可能以类似的方式将nltk's MWETokenizer多个单词聚合为短语,但在这种情况下,只是将单词组件聚合为单词.

或者,是否有另一个不会分割单词部分的标记器?

python nltk

12
推荐指数
1
解决办法
5854
查看次数

确定句子Python的时态

继其他几个职位,[例如检测英语动词使用NLTK时态,确定在蟒蛇的动词时态,Python的NLTK弄清楚紧张 ]我写了下面的代码,以确定使用紧张词性标注Python中的一句话:

from nltk import word_tokenize, pos_tag

def determine_tense_input(sentence):
    text = word_tokenize(sentence)
    tagged = pos_tag(text)

    tense = {}
    tense["future"] = len([word for word in tagged if word[1] == "MD"])
    tense["present"] = len([word for word in tagged if word[1] in ["VBP", "VBZ","VBG"]])
    tense["past"] = len([word for word in tagged if word[1] in ["VBD", "VBN"]]) 
    return(tense)
Run Code Online (Sandbox Code Playgroud)

这将返回过去/现在/未来动词的使用值,我通常将最大值作为句子的时态.准确性适度,但我想知道是否有更好的方法.

例如,现在有没有写出一个更专注于提取句子时态的包?[注意 - 3个堆叠溢出的帖子中有2个是4年,所以现在可能已经改变了].或者,我应该在nltk中使用不同的解析器来提高准确性吗?如果没有,希望上面的代码可以帮助别人!

python nlp nltk

11
推荐指数
1
解决办法
6468
查看次数

正则表达式提取两个字符串(这是变量)

我希望使用正则表达式来提取两个字符串之间的文本.我知道怎么做如果我想每次都在相同的字符串之间提取(并且无数问题要求这个,例如两个字符串之间的正则表达式匹配?),但是我想使用变化的变量来做,并且可能本身包含特殊字符正则表达式.(我想要任何特殊字符,例如*被视为文本).

例如,如果我有:

text = "<b*>Test</b>"
left_identifier = "<b*>"
right_identifier = "</b>
Run Code Online (Sandbox Code Playgroud)

我想创建正则表达式代码,这将导致以下代码运行:

re.findall('<b\*>(.*)<\/b>',text)
Run Code Online (Sandbox Code Playgroud)

这是<b\*>(.*)<\/b>我不知道如何动态创建的部分.

python regex python-2.7

7
推荐指数
2
解决办法
2003
查看次数

在python中插入或更新peewee记录

是否有一种简单的单行方式peewee在Python中使用,如果主键不存在则插入记录,或者如果记录已经存在则更新记录.

目前我正在使用代码:

try:
    sql_database.create(record_key = record_key, record_data_2 = record_data_2)
except IntegrityError:  ## Occurs if primary_key already exists
    sql_database.update(record_key = record_key, record_data_2 = record_data_2)
Run Code Online (Sandbox Code Playgroud)

我看不到"创建或更新"命令,但也许我错过了一些东西.

python peewee

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

创建字典,其中键是变量名

我经常想创建一个字典,其中键是变量名。例如,如果我有变量a并且b我想生成:({"a":a, "b":b} 通常在函数末尾返回数据)。

python中是否有任何(理想情况下内置的)方法可以自动执行此操作?即有一个函数,这样create_dictionary(a,b)返回{"a":a, "b":b}

python python-3.x

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

在Python中对计数器的所有值求和

我有一个collections模块的计数器.总结所有计数的最佳方法是什么?

例如,我有:

 my_counter = Counter({'a': 2, 'b': 2, 'c': 2, 'd': 1})
Run Code Online (Sandbox Code Playgroud)

并希望获得7返回的值.据我所知,该功能sum用于将多个计数器添加到一起.

python counter python-2.7

6
推荐指数
1
解决办法
3506
查看次数

如何使用正则表达式替换空格中的字符间的短划线

我想用正则表达式替换出现在带空格的字母之间的短划线.例如替换ab-cdab cd

以下匹配字符 - 字符序列,但也替换字符[即ab-cd结果a d,而不是ab cd我想要的]

 new_term = re.sub(r"[A-z]\-[A-z]", " ", original_term)
Run Code Online (Sandbox Code Playgroud)

我如何调整以上只能更换-零件?

python regex

6
推荐指数
2
解决办法
3312
查看次数

清除 Python 中的所有 lru_cache

我在 python 中有带有 lru_cache 缓存的函数,例如

 @lru_cache(maxsize=None)
 def my_function():
    ...
Run Code Online (Sandbox Code Playgroud)

虽然我可以单独清除缓存,例如my_function.cache_clear()有没有办法一次清除每个函数的缓存?[我在想,也许有一种方法可以返回内存中加载的所有函数名称,然后循环遍历它们以清除每个函数的缓存]。

我特别希望作为回退的一部分来实现,例如在我的机器上 90% 的内存被使用的情况下。

python caching lru

6
推荐指数
2
解决办法
7267
查看次数

获取字典中的第 x 大项

我希望从键的相应值中获取字典中第 x 大项。

例如,使用字典:

 y = {'a':55, 'b':33, 'c':67, 'd':12}
Run Code Online (Sandbox Code Playgroud)

我希望能够轻松提取'b'为第三大键。

最初,当我只在出现前三个之后,我复制了字典,找到了最大值(例如,在字典中找到具有最大值的键?),从最大值中删除键,然后重新运行. 当寻找多个最高值时,这种方法似乎很麻烦。有没有一种简单的方法可以获取第 x 大项的相应键?

python dictionary python-2.7

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

标签 统计

python ×10

python-2.7 ×4

counter ×2

nltk ×2

regex ×2

caching ×1

dictionary ×1

lru ×1

nlp ×1

peewee ×1

python-3.x ×1