社区所有版块导航
Python
python开源   Django   Python   DjangoApp   pycharm  
DATA
docker   Elasticsearch  
aigc
aigc   chatgpt  
WEB开发
linux   MongoDB   Redis   DATABASE   NGINX   其他Web框架   web工具   zookeeper   tornado   NoSql   Bootstrap   js   peewee   Git   bottle   IE   MQ   Jquery  
机器学习
机器学习算法  
Python88.com
反馈   公告   社区推广  
产品
短视频  
印度
印度  
私信  •  关注

wwii

wwii 最近创建的主题
wwii 最近回复了
3 年前
回复了 wwii 创建的主题 » python:如果共享第一个单词,则对列表中的值求和

由于某种原因,最后的总结不起作用

要修复原始解决方案,请执行以下操作:

  • 如果字典中没有密钥,请使用 d[key] = [value] 而不是 d[key] = [key] 那你就不需要了 val = [val.pop(0) for k,val in d.items()]

  • 如果键在字典中,则将该值附加到 else 条款

    for key, value in new_list:
        if key not in d:
            d[key] = [value]
        else:
            d[key].append(value)
    

当您将电子邮件地址拆分为 '@' 你会得到两个项目列表:

In [3]: 'image001.png@01D36CD8.2A2219D0'.split('@')
Out[3]: ['image001.png', '01D36CD8.2A2219D0']

如果你想检查 索引结果的第二项:

In [4]: q = 'image001.png@01D36CD8.2A2219D0'.split('@')

In [5]: q[1]
Out[5]: '01D36CD8.2A2219D0'

所以你的for循环更像是:

In [9]: for thing in match:
   ...:     domain = thing.split('@')[1]
   ...:     print(domain)
   ...:     
01D36CD8.2A2219D0
countable.us
gmail.com
5 年前
回复了 wwii 创建的主题 » python中Arr[:,num]=1形式的数组表达式
num = 5
y[ :, num ]= 1

假设它是一个Numpy ndarray(或使用相同符号的等价物):它指定 1 到第六项的每一项 .

第一个维度的冒号指定第一个维度中的所有项(索引)。单一价值( num )对于第二个维度,指定 系列 (或顺序)。在二维数组中,第一维被认为是 第二维度是 .


Indexing, Slicing and Iterating
Basic Slicing and Indexing

6 年前
回复了 wwii 创建的主题 » Python 3.7中通过逐段计数单词的自定义数据结构

那么,我怎样才能将一个单词的出现与它在一个段落中的实例联系起来,从而产生上面所期望的结果呢?

将过程分成两部分:查找段落和查找单词

from nltk.tokenize import RegexpTokenizer
import re, collections

p = r'<P ID=\d+>(.*?)</P>'
paras = RegexpTokenizer(p)
words = RegexpTokenizer(r'\w+')

解析时保留两个词典:一个用于收集频率,一个用于文档频率。

col_freq = collections.Counter()
doc_freq = collections.Counter()

遍历段落;获取段落中的单词;将单词输入col_freq dict,并将一组单词输入doc_freq dict

for para in paras.tokenize(text):
    tokens = [word.lower() for word in words.tokenize(para)]
    col_freq.update(tokens)
    doc_freq.update(set(tokens))

把这两本词典结合起来。

d = {word:(col_freq[word], doc_freq[word]) for word in col_freq}

有一些效率低下-分析文本两次-但它可以调整,如果它成为一个问题。

RegexpTokenizer 真的没有什么比 re.findall() 在这种情况下,但是 兽皮 一些细节,使这个不那么冗长,所以我用了它。


有时 re 不能很好地处理格式错误的标记。分析段落可以用BeautifulSoup完成。

from bs4 import BeautifulSoup
soup = BeautifulSoup(text,"html.parser")
for para in soup.find_all('p'):
    tokens = [word.lower() for word in words.tokenize(para.text)]
    print(tokens)
##    col_freq.update(tokens)
##    doc_freq.update(set(tokens))
6 年前
回复了 wwii 创建的主题 » 如何在python中使用字典将荷兰语翻译成英语

你在用户的回复中列出了一个列表

In [26]: data = [input("Please enter sentence\n")]

Please enter sentence
You are Jason

In [27]: data
Out[27]: ['You are Jason']

列表中没有 lower 方法。
首先获取用户的响应并将其转换为小写。

In [28]: data = input("Please enter sentence\n")

Please enter sentence
You are Jason

In [29]: data
Out[29]: 'You are Jason'

In [30]: data = data.lower()

In [31]: data
Out[31]: 'you are jason'

然后 split the string 在空白处获取单个单词的列表。

In [32]: data = data.split()

In [33]: data
Out[33]: ['you', 'are', 'jason']