Python 为什么我的输出在这段代码中是错误的?

Python 为什么我的输出在这段代码中是错误的?,python,csv,python-3.x,Python,Csv,Python 3.x,我正在编写一个程序,根据用户输入显示有多少人使用特定的电子邮件提供商。我有一个CSV文件,每次运行程序时,它都会打印0 我的代码如下: user = input('Enter an email'): c=0 f_in = open('us-500.csv','r') f_in.readline() for line in f_in: line = line.strip(' ') first, last, company, address, city, country, state

我正在编写一个程序,根据用户输入显示有多少人使用特定的电子邮件提供商。我有一个CSV文件,每次运行程序时,它都会打印
0

我的代码如下:

user = input('Enter an email'):
c=0
f_in = open('us-500.csv','r')
f_in.readline()
for line in f_in:
    line = line.strip(' ')
    first, last, company, address, city, country, state, zip, phone1, phone2, email, web = line.split(',')
    for count in email:
            if count == user:
                c +=1
print(c) 
f_in.close()

您似乎希望在不同的电子邮件地址中匹配域-
@example.com
。这是正确的吗

如果是这样的话,你将不得不期望电子邮件看起来像一个典型的地址,”user@example.com,并首先将地址分成若干部分

试试这个:

user, domain = email.split('@', 1)
此时,
将类似于“example.com”,这对您来说已经足够了

provider = input('Enter an email provider (like "gmail.com"): '):

count = 0
with open('us-500.csv', 'r') as users:
    users.readline()   # skip header lines
    for user in users:
        first, last, company, address, city, country, state, zip, phone1, phone2, email, web = user.split(',')
        _, domain = email.split('@', 1)
        if domain == provider:
            count += 1

print("Email provider '{}' has {} users".format(provider, count))
改为
user=int(输入('输入电子邮件:'))