【问题标题】:How to write a function that count each character in a string?如何编写一个计算字符串中每个字符的函数?
【发布时间】:2021-07-10 08:22:35
【问题描述】:

我正在尝试编写一个函数来计算每个字符出现在字符串s 中的次数。首先,我想使用一个 for 循环

for i in range(len(s)):
char = s[i]

在这里,我被卡住了。我将如何从这里开始?也许我需要计算char在字符串s中出现了多少次。

那么,输出应该是……

count_char("practice")
{'p' : 1, 'r' : 1, 'a' : 1, 'c' : 2, 't' : 1, 'i' : 1, 'e' : 1}

【问题讨论】:

    标签: for-loop count char


    【解决方案1】:

    简单代码:

    def count_char(s):
        result = {}
        for i in range(len(s)):
            result[s[i]] = s.count(s[i])
        return result
    
    print(count_char("practice"))
    

    列表理解代码:

    def count_char(s):
        return {s[i]:s.count(s[i]) for i in range(len(s))}
    
    print(count_char("practice"))
    

    结果:

    {'p': 1, 'r': 1, 'a': 1, 'c': 2, 't': 1, 'i': 1, 'e': 1}
    

    【讨论】:

    • 我们如何按顺序打印字母,所以p先,r,a,等等?
    • 对不起,你能坚持for i in range(len(s))吗?
    猜你喜欢
    • 2023-02-04
    • 2017-03-04
    • 1970-01-01
    • 2022-07-08
    • 2014-04-17
    • 1970-01-01
    • 1970-01-01
    • 2015-09-30
    • 1970-01-01
    相关资源
    最近更新 更多