2016-02-14 140 views
-2

我正在編寫一個程序,顯示有多少人使用基於用戶輸入的特定電子郵件提供程序。我有一個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() 
+0

而不是'user = int(input('Enter a email:'))' – bernie

回答

0

好像你正在尋找相匹配的領域 - @example.com - 不同的電子郵件地址。它是否正確?

如果是這樣,您將不得不期待電子郵件看起來像一個典型的地址,「[email protected]」,並首先將地址拆分。

試試這個:

user, domain = email.split('@', 1) 

在這一點上,domain將會像 「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)) 
相關問題