小编Vis*_*rde的帖子

'generator'类型的对象没有len()

我刚刚开始学习python.我想在NLTK中编写一个程序,将文本分成unigrams,bigrams.例如,如果输入文本是:

"由于错误,我感到悲伤和失望"

函数应该生成如下文本:

我 - >感觉 - >感到难过 - >悲伤和 - >和失望 - >失望到期 - >由于 - >错误

我编写了代码来输入文本到程序中.这是我正在尝试的功能:

def gen_bigrams(text):
    token = nltk.word_tokenize(review)
    bigrams = ngrams(token, 2)
    #print Counter(bigrams)
    bigram_list = ""
    for x in range(0, len(bigrams)):
        words = bigrams[x]
        bigram_list = bigram_list + words[0]+ " " + words[1]+"-->"
    return bigram_list
Run Code Online (Sandbox Code Playgroud)

我得到的错误是......

for x in range(0, len(bigrams)):
TypeError: object of type 'generator' has no len()
Run Code Online (Sandbox Code Playgroud)

由于ngram函数返回一个生成器,我尝试使用len(list(bigrams))但它返回0值,所以我得到相同的错误.我已经提到了有关stackexchange的其他问题,但我仍然没有解决如何解决这个问题.我被这个错误困住了.任何解决方法,建议?

python nltk

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

并行化REST调用的最佳方法是什么?

我正在研究一些处理多个REST调用的java代码

call1()
call2()
call3()
...
Run Code Online (Sandbox Code Playgroud)

我希望并行化这些调用,但同步执行我的主代码.我用lamba和并行流做了一个POC:

List<Runnable> list = new ArrayList();
list.add(() -> {call1()});
list.add(() -> {call2()});
list.add(() -> {call3()});
list.add(...);

list.parallelStream()
            .forEach(Runnable::run);
Run Code Online (Sandbox Code Playgroud)

你有其他解决方案吗?我还检查过使用来自Jersey客户端的异步调用,但这需要更多的代码更改.

java rest multithreading java-stream

9
推荐指数
1
解决办法
431
查看次数

AttributeError:'float'对象没有属性'lower'

我正面临着这个属性错误,如果它们出现在推文中,我就会陷入如何处理浮点值.流媒体推文必须更低,并且标记化,所以我使用了分割功能.

有人可以帮我处理它,任何解决方法或解决方案..?

这是我犯的错误 ....

AttributeError                            Traceback (most recent call last)
<ipython-input-28-fa278f6c3171> in <module>()
      1 stop_words = []
----> 2 negfeats = [(word_feats(x for x in p_test.SentimentText[f].lower().split() if x not in stop_words), 'neg') for f in l]
      3 posfeats = [(word_feats(x for x in p_test.SentimentText[f].lower().split() if x not in stop_words), 'pos') for f in p]
      4 
      5 trainfeats = negfeats+ posfeats

AttributeError: 'float' object has no attribute 'lower'
Run Code Online (Sandbox Code Playgroud)

这是我的代码

p_test = pd.read_csv('TrainSA.csv')

stop_words = [ ]

def word_feats(words):

    return dict([(word, …
Run Code Online (Sandbox Code Playgroud)

python twitter tweets sentiment-analysis

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

如何根据使用 Selenium 的 html 从使用 xpath 找到的元素中检索属性 aria-label 的值

我有以下 HTML 跨度:

<button class="coreSpriteHeartOpen oF4XW dCJp8">
    <span class="glyphsSpriteHeart__filled__24__red_5 u-__7" aria-label="Unlike"></span>
</button>
Run Code Online (Sandbox Code Playgroud)

我也有一个webElement表示包含这个跨度的按钮,我使用xpath. 如何aria-label从元素中检索值(Unlike)?

我试图做:

btn = drive.find_element(By.xpath, "xpath") 
btn.get_attribute("aria-label")
Run Code Online (Sandbox Code Playgroud)

但它什么都不返回。如何从元素对象中检索具有“aria-label”属性的元素的文本值?

python selenium webdriver getattribute selenium-webdriver

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