计算Python字符串中的字符频率

时间:2016-02-08 22:50:41

标签: python string python-3.x python-3.5

我想知道在Python 3.5中是否有办法检查字符串是否包含某个符号。此外,我想知道是否有办法检查字符串包含的数量。例如,如果我想检查字符' $'出现在这个字符串中...... ^$@%#$$,  我该怎么做?

2 个答案:

答案 0 :(得分:4)

您可以使用split检查字符串中是否有符号:

patternList.setCellFactory(TextFieldListCell.forListView(new StringConverter<Pattern>() {
    @Override
    public String toString(Pattern pattern) {
        return pattern.toString();
    }

    @Override
    public Pattern fromString(String string) {
        try {
            return Pattern.compile(string);
        } catch (PatternSyntaxException e) {
            return null;
        }
    }
}));
patternList.setOnEditCommit(e -> {
    if (e.getNewValue() == null) {
        // TODO pattern syntax error, prevent commit and stay in edit mode
    } else {
        patternList.getItems().set(e.getIndex(), e.getNewValue());
    }
});

您还可以使用re.findall

if your_str.split('$'):
    print(your_str.count('$'))

如果字符串中没有这样的符号,则返回import re print(len(re.findall('\$', your_str))) ,否则返回字符串中该符号的计数。

但最简单的方法是检查并返回 0 ,如果符号位于:

count

如果找不到任何内容,则返回print(your_str.count('$'))

答案 1 :(得分:2)

这些是内置函数索引计数。您可以在official site找到完整的文档。请习惯自己做研究;第一步是熟悉语言元素的名称。

if my_str.index('$') != 0:
    # Found a dollar sign

print my_str.count('$')