pyton遍历数据中单词出现的频率,返回排序
时间: 2024-05-05 08:21:47 浏览: 119
可以使用Python中的字典来统计单词出现的频率,然后使用sorted函数按照频率进行排序。下面是一个简单的实现:
```python
data = ['apple', 'banana', 'cherry', 'apple', 'banana', 'apple', 'cherry', 'date']
word_count = {}
for word in data:
if word in word_count:
word_count[word] += 1
else:
word_count[word] = 1
sorted_word_count = sorted(word_count.items(), key=lambda x: x[1], reverse=True)
print(sorted_word_count)
```
输出:
```
[('apple', 3), ('banana', 2), ('cherry', 2), ('date', 1)]
```
这里使用了一个字典word_count来记录每个单词出现的次数,然后使用sorted函数按照字典中的值进行排序,得到一个列表sorted_word_count。列表中的每个元素都是一个元组,第一个元素是单词,第二个元素是出现的次数。
相关问题
pyton中数据格式转换成json格式
在Python中,可以使用内置的json库来将数据格式转换为JSON格式。下面是一个示例代码,将Python字典转换为JSON格式:
```
import json
# 定义一个Python字典
data = {
"name": "John Smith",
"age": 32,
"city": "New York"
}
# 将Python字典转换为JSON格式
json_data = json.dumps(data)
# 输出JSON格式的数据
print(json_data)
```
输出结果为:
```
{"name": "John Smith", "age": 32, "city": "New York"}
```
其中,`json.dumps()`函数用于将Python对象编码成JSON字符串,返回一个字符串。如果你想要将JSON字符串转换回Python对象,可以使用`json.loads()`函数。
pyton 列表元素 正则 统计中文字数 返回最多
我可以回答这个问题。您可以使用 Python 的正则表达式模块 re 来匹配中文字符,然后使用列表推导式来统计每个元素中中文字符的数量,最后返回具有最多中文字符的元素。以下是示例代码:
import re
def count_chinese(text):
pattern = re.compile(r'[\u4e00-\u9fa5]') # 匹配中文字符
return len(pattern.findall(text)) # 返回中文字符数量
lst = ['你好', 'hello', '世界', 'Python', '中文字符']
max_chinese = max(lst, key=count_chinese) # 返回具有最多中文字符的元素
print(max_chinese) # 输出 '中文字符'
阅读全文