python - 比较列表并突出显示关键元素
问题描述
from colorama import Fore, init
init()
key_numbers = [1,3,5,7,9]
numbers = [3,4,6,3,8,9,7,9,3,1]
for number in numbers:
if number in key_numbers:
number1 = Fore.RED + number
numbers = [number1 if number else number for number in numbers]
else:
continue
本质上,我希望代码遍历列表中的每个数字numbers
并检查列表中是否存在相应的数字key_numbers
。
如果存在,我想用红色字体替换数字并继续下一个数字
输出应该有一个列表,如果列表中存在数字,则以红色突出显示,key_numbers
其他数字以常规字体和颜色突出显示。
我认为尝试将数字替换为number1
. 有人可以帮我解决我哪里出错了吗?
解决方案
下面的代码将获取您的两个列表并打印出彩色输出,突出显示那些numbers
也是number_keys
. 让我知道这是否是您想要实现的目标!
#!/usr/bin/python3
from colorama import init, Fore, Style
# init colorama
init()
def highlight(numbers, keys):
"""
check if numbers exists in keys and
print + highlight them in red.
"""
for number in numbers:
if number in keys:
print(Fore.RED + str(number) + Style.RESET_ALL, end=" ")
else:
print(number, end=" ")
print() # print another "\n"
# define numbers and keys
key_numbers = [1, 3, 5, 7, 9]
numbers = [3,4,6,3,8,9,7,9,3,1]
print("numbers to highlight: {}".format(key_numbers))
# call highlight()
highlight(numbers, key_numbers)
推荐阅读
- r - 限制 geom_abline 的范围(slope=somenumber)
- d3.js - d3.js - 绘制垂直对齐的箱形图
- google-chrome - 如何让基于浏览器的 emacs 模式工作
- google-places-api - 地点类型与地点等级
- kubernetes - 如果我们只有一个 stateful pod 的副本,我们可以使用 Deployment 资源而不是 StatefulSet 吗?
- batch-file - 数据迁移问题
- jpeg - 哪个文档包含 JPEG 标签的官方数值?
- autodesk-forge - 执行工作项时出现“FailedExecution”错误
- transformer - 在线文档中 Transformers 的 Spacy 3.1 示例代码似乎是错误的
- r - 如何使用多面图添加趋势线