📅  最后修改于: 2023-12-03 15:12:04.632000             🧑  作者: Mango
本程序用于计算特殊字符(包括空格,制表符和换行符)在给定字符串中出现的频率,以及特殊字符与给定字符串的子字符串长度之比的总和。
输入一个字符串并运行程序,程序会输出以下结果:
def count_special_chars(string):
"""
计算特殊字符在字符串中出现的次数
"""
special_chars = [" ", "\t", "\n"]
count = 0
for char in string:
if char in special_chars:
count += 1
return count
def count_substrings(string):
"""
计算给定字符串的所有子字符串长度之和
"""
length = len(string)
count = 0
for i in range(length):
for j in range(i+1, length+1):
count += j - i
return count
def calculate_ratio(string):
"""
计算特殊字符与给定字符串的子字符串长度之比的总和
"""
special_chars_count = count_special_chars(string)
string_length = len(string)
substrings_length = count_substrings(string)
ratio = special_chars_count / substrings_length
return ratio
if __name__ == "__main__":
string = input("请输入一个字符串:")
special_chars_count = count_special_chars(string)
string_length = len(string)
substrings_length = count_substrings(string)
ratio = calculate_ratio(string)
print("特殊字符出现次数:{}".format(special_chars_count))
print("字符串长度:{}".format(string_length))
print("子字符串长度之和:{}".format(substrings_length))
print("特殊字符与子字符串长度之比的总和:{}".format(ratio))
请输入一个字符串:Hello world!
特殊字符出现次数:1
字符串长度:12
子字符串长度之和:78
特殊字符与子字符串长度之比的总和:0.01282051282051282