python - 从列表中删除带有数字的项目
问题描述
在这里会很感激一些帮助,因为我没有任何想法。
我有一个单词列表,每个单词都打印在一个新行上,前面有数字。我想要求用户输入一个数字并从列表中删除该行(使用 del 函数)。我无法弄清楚如何匹配行前的索引和数字,并避免它超出范围。
linesList = []
def a():
while True:
line = input("Add a line: ")
linesList.append(line)
if line == "#":
linesList.pop()
counter = 0
for i in linesList:
print("{}: {}".format(counter + 1, linesList[counter]))
counter += 1
print(" ")
break
def d():
while True:
number = int(input("Line Number: "))
length = len(linesList)
if number in range(length):
del linesList[number]
counter = 0
for i in linesList:
print("{}: {}".format(counter + 1, linesList[counter]))
counter += 1
print(" ")
break
else:
continue
预期结果:
Add a line: Monday
Add a line: Tuesday
Add a line: Wednesday
Add a line: Thursday
Add a line: Friday
Add a line: #
1: Monday
2: Tuesday
3: Wednesday
4: Thursday
5: Friday
Line number: 5
1: Monday
2: Tuesday
3: Wednesday
4: Thursday
解决方案
在删除功能中,用户给出的数字比索引大一,因此您需要为此调整代码
def d():
while True:
number = int(input("Line Number: "))
length = len(linesList)
if (number-1) in range(length):
del linesList[number-1]
counter = 0
for i in linesList:
print("{}: {}".format(counter + 1, linesList[counter]))
counter += 1
print(" ")
break
else:
continue
随着变化:
Add a line: Monday
Add a line: Tuesday
Add a line: Wednesday
Add a line: Thursday
Add a line: Friday
Add a line: #
1: Monday
2: Tuesday
3: Wednesday
4: Thursday
5: Friday
Line Number: 5
1: Monday
2: Tuesday
3: Wednesday
4: Thursday
推荐阅读
- ruby-on-rails - 如何从 rails image_tag 仅获取图像 src 属性?
- python - 泡菜。EOFError:输入不足。我可以从损坏的泡菜文件中恢复任何信息吗?
- api - 需要在postman中转到下一页数据
- swift - ARKit 无法可视化远处的 ARObjects,即 10 米外
- azure-blob-storage - 我面临使用 AAD 令牌作为身份验证的邮递员获取容器 ACL 和设置容器 ACL REST API 的问题
- javascript - 为什么我的 JavaScript 不能与照片库一起使用?
- python - 如何在使用 selenium 截屏之前等待元素完全加载
- c - C中“if”语句的令人困惑和意外的行为
- javascript - 在插入javascript元素之前等待元素出现不起作用
- javascript - 通过 JS 类或通过 jQuery trigger() 触发方法?