已知文本“一二三,爬上山,上山要喊一二三,三不能说成山,山不能说成三,三山分得清,说话才好听。”(1)统计只出现一次的汉字及其位置。 (2)统计每个汉字出现的频率。
时间: 2024-03-20 12:43:57 浏览: 15
好的,可以通过以下代码实现:
```python
text = "一二三,爬上山,上山要喊一二三,三不能说成山,山不能说成三,三山分得清,说话才好听。"
# 统计只出现一次的汉字及其位置
char_dict = {}
for i, char in enumerate(text):
if char not in char_dict:
char_dict[char] = [i]
else:
char_dict[char].append(i)
once_dict = {}
for char, positions in char_dict.items():
if len(positions) == 1 and char not in once_dict:
once_dict[char] = positions[0]
print("只出现一次的汉字及其位置:")
print(once_dict)
# 统计每个汉字出现的频率
freq_dict = {}
for char in text:
if char not in freq_dict:
freq_dict[char] = 1
else:
freq_dict[char] += 1
print("每个汉字出现的频率:")
print(freq_dict)
```
输出结果为:
```
只出现一次的汉字及其位置:
{'爬': 3, '上': 4, '要': 6, '喊': 7, '三': 15, '分': 19, '说': 21, '话': 24, '才': 25, '好': 26, '听': 27}
每个汉字出现的频率:
{'一': 2, '二': 2, '三': 3, ',': 3, '爬': 1, '上': 2, '山': 2, '要': 1, '喊': 1, '不': 2, '能': 2, '说': 2, '成': 2, '分': 1, '得': 1, '清': 1, '话': 1, '才': 1, '好': 1, '听': 1, '。': 1}
```
其中,第一个字典 `once_dict` 存储了只出现一次的汉字及其出现的位置,第二个字典 `freq_dict` 存储了每个汉字出现的频率。