Python 在字典中查找具有特定后缀的键
键的后缀是在单词末尾提到的一组字母。在这个问题中,我们需要创建特定变量,将后缀键设置为通过使用一些特定条件来过滤结果的字典。在Python中,我们有一些内置函数,如endswith(),filter(),lambda,append(),和items(),它们将用于在字典中查找具有特定后缀的键。
举个例子。
给定的字典,
my_dict = {‘compiler’: 100, ‘interpreter’: 200, ‘cooperative’: 300, ‘cloudbox’: 400, ‘database’: 500}
后缀键被设置为’er’,
因此,最终输出变为{‘compiler’: 100, ‘interpreter’: 20}
语法
示例中使用以下语法
endswith()
这是Python中预定义的方法,如果字符串以给定值结束,它返回true,否则返回false。
filter()
filter()方法在我们需要根据特定条件过滤项目时应用。简单来说,它允许迭代那些满足条件的元素。
lambda
函数 lambda 提供了一种使用 lambda 关键字声明简短匿名函数的快捷方式。lambda 函数只有一个表达式。
append()
append()是Python中的内置函数,它将元素插入到列表的末尾。
items()
这是一个内置方法,用于返回视图对象。该对象由键值对组成。
使用列表推导
在以下示例中,程序使用了列表推导技术,其中变量key遍历输入字典,并使用if语句和内置函数endwith()设置了具有特定后缀的键的条件,以显示结果。
示例
def key_suffix(dict, suffix):
return [key for key in dict if key.endswith(suffix)]
# Create the dictionary
my_dict = {"dropbox": 1, "box": 2, "chat": 3, "mail": 4}
sfx = "ox"
# Calling function
res = key_suffix(my_dict, sfx)
# Display the result
print("Keys with suffix","[", sfx, "]", ":\n", res)
输出
Keys with suffix [ ox ] :
['dropbox', 'box']
使用filter()函数
在下面的例子中,程序使用一个递归函数key_suffix来接收两个参数,dict和suffix,以接收输入的字典和后缀值。然后使用一些内置函数- filter() [过滤给定的后缀元素以获取结果],lambda[使用内置函数endswith()计算后缀操作],最后使用内置函数list()将后缀值以列表形式获取结果。
示例
def key_suffix(dict, suffix):
return list(filter(lambda key: key.endswith(suffix), dict))
# Create the list
my_dict = {"Evergreen": 1, "Beautiful": 2, "Fruitful": 3, "Golden": 4, "Brass": 5}
sfx = "ful"
# Calling function
res = key_suffix(my_dict, sfx)
# Display the display
print("Keys with suffix","[", sfx, "]", ":\n", res)
输出
Keys with suffix [ ful ] :
['Beautiful', 'Fruitful']
使用循环和条件语句
在以下示例中,程序使用递归函数设置一个空列表,用于以列表形式存储结果,并在函数返回时返回。然后,使用for循环迭代程序的输入字典,并使用if语句通过使用内置函数endswith()和append()为具有特定后缀的键设置条件。接下来,它将实现函数返回以获取特定后缀作为结果。
示例
def key_suffix(dict, suffix):
keys_with_suffix = []
# Set the condition for operation and iteration of the specific suffix
for key in dict:
if key.endswith(suffix):
keys_with_suffix.append(key)
return keys_with_suffix
# Create the dictionary
my_dict = {"apple": 1, "banana": 2, "cherry": 3, "orange": 4, "Grapes": 5}
sfx = "y"
# Calling function
res = key_suffix(my_dict, sfx)
print("Keys with suffix","[", sfx, "]", ":\n", res)
输出
Keys with suffix [ y ] :
['cherry']
字典推导
在下面的示例中,我们将使用字典推导,其中第一个参数设置为键和值对。使用items()检查字典的视图对象,并应用if语句来设置键的条件,使用内置函数endswith()指定具有特定后缀的键并生成结果。
示例
def key_suffix(dict, suffix):
return {key: value for key, value in dict.items() if key.endswith(suffix)}
# Create the dictionary
my_dict = {"Anonyms": 1, "Synonyms": 2, "Metaphor": 3, "Irony": 4}
sfx = "ms"
# Calling function
res = key_suffix(my_dict, sfx)
print("Keys with suffix","[", sfx, "]", ":\n", res)
输出
Keys with suffix [ ms ] :
{'Anonyms': 1, 'Synonyms': 2}
结论
我们知道在字典中,特定后缀的具体键都表示为字符串形式,并以整数形式指定值。为了解决这个问题陈述,我们使用了字典推导式、列表推导式、filter()函数以及条件语句等方法。这种类型的程序通常用于各种应用程序,如数据分析、数据过滤、搜索算法的逻辑构建等。