<p>对于我的一项作业,如果我们能增加教授在作业指导书中没有告诉我们要做的新功能,我们会提供额外的学分。这是一个密码保护程序,我正在使用caeser密码将网站/密码保存到列表中。我正在尝试创建一个基于用户特定输入的密码删除功能</p>
<p>例如,下面是一个随机模板列表:</p>
<pre><code>passwords = [["facebook", "gGjjI%%%66"], ["youtube", "coYtF###12$"]]
</code></pre>
<p>假设我想删除youtube密码列表中的密码。我做了一些研究,似乎remove()可能是一个很好的选择,但我在实践中遇到了一些问题</p>
<pre><code>if choice == '6':
input("Enter the password you want to delete: ")
for keyvalue in passwords:
print(keyvalue[0])
deletePassword = input()
for i in range(len(passwords)):
if deletePassword in passwords[i][0]:
passwords.remove(deletePassword)
</code></pre>
<p>这里的问题是,在我输入我想要删除密码的网站名称后,如本例中的youtube,在我点击enter键后,它会重新打印仍然包含我想要删除的内容的列表,然后如果我再次点击enter键,它会抛出:<strong>ValueError:list.remove(x):x不在列表中</strong></p>
<p>有没有关于如何解决这个问题的建议,或者为我指出如何更好地解决这个问题的正确方向</p>
<p>替换:</p>
<pre><code>input("Enter the password you want to delete: ")
</code></pre>
<p>与</p>
<pre><code>print("Enter the password you want to delete: ")
</code></pre>
<p>(您有两个<code>input</code>,只需删除第一个的值)</p>