Python –字符串列表中的前缀频率
有时,在使用Python列表时,我们可能会遇到需要获取以特定子字符串开头的字符串的计数的问题。这可以在 Web 开发和一般编程中应用。让我们讨论可以执行此任务的某些方式。
方法#1:使用循环+ startswith()
上述功能的组合可用于执行此任务。在此,我们为列表中的每个字符串运行一个循环,并使用startswith() 来获取以特定前缀开头的字符串。
# Python3 code to demonstrate
# Prefix frequency in List
# using loop + startswith()
# Initializing list
test_list = ['gfgisbest', 'geeks', 'gfgfreak', 'gfgCS', 'Gcourses']
# printing original list
print("The original list is : " + str(test_list))
# Initializing substring
test_sub = 'gfg'
# Prefix frequency in List
# using loop + startswith()
res = 0
for ele in test_list:
if ele.startswith(test_sub):
res = res + 1
# printing result
print ("Strings count with matching frequency : " + str(res))
输出 :
The original list is : [‘gfgisbest’, ‘geeks’, ‘gfgfreak’, ‘gfgCS’, ‘Gcourses’]
Strings count with matching frequency : 3
方法 #2:使用sum() + startswith()
上述功能的组合可用于执行此任务。在此,我们使用 sum() 和 startswith() 执行计数任务,用于执行前缀检查任务。
# Python3 code to demonstrate
# Prefix frequency in List
# using sum() + startswith()
# Initializing list
test_list = ['gfgisbest', 'geeks', 'gfgfreak', 'gfgCS', 'Gcourses']
# printing original list
print("The original list is : " + str(test_list))
# Initializing substring
test_sub = 'gfg'
# Prefix frequency in List
# using sum() + startswith()
res = sum(sub.startswith(test_sub) for sub in test_list)
# printing result
print ("Strings count with matching frequency : " + str(res))
输出 :
The original list is : [‘gfgisbest’, ‘geeks’, ‘gfgfreak’, ‘gfgCS’, ‘Gcourses’]
Strings count with matching frequency : 3