python - .remove 函数不适用于“if”签入列表
问题描述
我对编程和 python 本身还很陌生——我正在尝试使用该.remove
函数从列表中删除一个项目,如果它存在于该列表中(因为没有得到 nameError)。
q = ["cat","dog","fish","hamster","horse"]
#Request element name to delete from queue
removeElement = input("Please type in the element name to remove from the queue: ")
#Remove the given element from the list
q.remove(removeElement) if 'removeElement' in q else None
print(q)
不幸的是,如果我尝试使用“if”检查器,则该项目不会从我的列表中删除 - 为什么会这样,我该如何解决这个问题?
解决方案
您必须使用变量的名称而不是字符串:
q.remove(removeElement) if removeElement in q else None
推荐阅读
- php - 优化我的函数以迭代出自定义分类术语的无序列表
- haskell - 如何更改/提取部分手动定义的数据类型的值?
- r - ggplot 时间序列:在 x 轴上绘制整月
- javascript - 页面内容重新加载时获取 Null 值
- docker - 从 docker 运行 GUI 应用程序,QStandardPaths:未设置 XDG_RUNTIME_DIR,默认为“/tmp/runtime-root”
- java - 如何从文本文件中读取游戏板并将其转换为二维数组
- node.js - 为什么 Activity body 太大而无法在 Bot 框架中触发存储错误?
- java - Android上的Kivy,发生JVM异常:尝试在空对象引用上调用虚拟方法...
- discord - Discord js 发给大家 pm
- javascript - 输入范围 - 值增加(值++)与值减少(值--)