TypeError:“NoneType”对象不是可订阅的字典python

2024-05-16 12:41:01 发布

您现在位置:Python中文网/ 问答频道 /正文

代码

import pandas as pd
import clearbit
import json
clearbit.key = 'sk_1915de5d2d7b6e245d6613e3d2188368'
df = pd.read_csv("/home/vipul/Desktop/new.csv", sep=',', encoding="utf-8")

saved_column = df['Company']
print(saved_column)
i=0
NoneType = type(None)
for data in saved_column:   

    n = saved_column[i]
    i = i+1
    data = clearbit.NameToDomain.find(name=n)
    print(data)
    df['domain'][i] = data['domain']

df.to_csv("/home/vipul/Desktop/new.csv",index = False, skipinitialspace=False)

print("File saved to desktop as new.csv")

如何处理typenone对象并在csv文件中存储一些默认值对应的公司名称

新建.csv:

^{pr2}$

打印(数据)

Name: Company, dtype: object
{'domain': 'accenture.com', 'logo': 'https://logo.clearbit.com/accenture.com', 'name': 'Accenture'}
{'domain': 'and.digital', 'logo': 'https://logo.clearbit.com/and.digital', 'name': 'AND Digital'}
{'domain': 'accenture.com', 'logo': 'https://logo.clearbit.com/accenture.com', 'name': 'Accenture'}
None
{'domain': 'capgemini.com', 'logo': 'https://logo.clearbit.com/capgemini.com', 'name': 'Capgemini'}
{'domain': 'accenture.com', 'logo': 'https://logo.clearbit.com/accenture.com', 'name': 'Accenture'}
{'domain': 'capgemini.com', 'logo': 'https://logo.clearbit.com/capgemini.com', 'name': 'Capgemini'}
None
{'domain': 'accenture.com', 'logo': 'https://logo.clearbit.com/accenture.com', 'name': 'Accenture'}  

它没有给出类型错误的类型


Tags: csvnamehttpsimportcomdfdatadomain
1条回答
网友
1楼 · 发布于 2024-05-16 12:41:01

您可以先将data['domain']保存在一个列表中,然后将其分配给df

res = []
for data in saved_column:   

    n = saved_column[i]
    i = i+1
    data = clearbit.NameToDomain.find(name=n)
    if data:
        res.append(data.get('domain', None))

df['domain'] = res
df.to_csv("/home/vipul/Desktop/new.csv",index = False, skipinitialspace=False)

print("File saved to desktop as new.csv")

相关问题 更多 >