簡體   English   中英

python ValueError:需要多個值才能解壓

[英]python ValueError:need more than 1 value to unpack

問題

用戶名,密碼= line.strip()。split(“:”)
ValueError:需要超過1個值才能解包

這是腳本

print '[+] Bruteforcing against %s with dictionary %s' % (ip, filename)
for line in fd.readlines():
    username, password = line.strip().split(":")
    t = threading.Thread(target=attempt, args=(ip,username,password))

您正在逐行讀取打開的文件,每行臨時存儲在變量“行”中。然后,在刪除每行開頭和結尾的所有空格后,您嘗試將這一行分為兩部分,其中一個是字符':'之前的左側部分,以及字符':'之后的右側部分,並將它們存儲在兩個變量“用戶名”和“密碼”中。

出現錯誤的可能原因是,您考慮到字符':'試圖將行分為兩部分。 如果字符':'不存在,該怎么辦。 這是導致錯誤類型的可能原因。

我的建議是嘗試檢查行中是否存在字符,如果存在則嘗試拆分行

例如,您可以簡單地檢查:

if line.find(':')!=-1: 
   username, password = line.strip().split(":")

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM