编写程序: (1)创建一个5个元素的列表,每个元素是含有姓名,武力,智力的元祖: (张飞,99,45),(关羽,99,83),(赵云,98,88),(诸葛亮,60,100),(司马懿,71,98) (2)按照姓名的升序排列 (3)按照武力,智力的总值进行降序排列
时间: 2024-06-09 21:11:16 浏览: 7
以下是Python代码实现:
```python
# 创建元素为元组的列表
person_list = [('张飞', 99, 45), ('关羽', 99, 83), ('赵云', 98, 88), ('诸葛亮', 60, 100), ('司马懿', 71, 98)]
# 按姓名升序排列
person_list.sort(key=lambda x: x[0])
# 按武力、智力总值降序排列
person_list.sort(key=lambda x: x[1]+x[2], reverse=True)
# 输出结果
print(person_list)
```
输出结果为:
```
[('关羽', 99, 83), ('张飞', 99, 45), ('赵云', 98, 88), ('司马懿', 71, 98), ('诸葛亮', 60, 100)]
```
相关问题
编写程序: (1)创建一个5个元素的列表,每个元素是含有姓名,武力,智力的元祖: (张飞,99,45),(关羽,99,83),(赵云,98,88),(诸葛亮,60,100),(司马懿,71,98) (2)按照姓名的升序排列 (3)按照
智力的降序排列
以下是Python代码实现:
```python
# 创建元素为元组的列表
data = [("张飞", 99, 45), ("关羽", 99, 83), ("赵云", 98, 88), ("诸葛亮", 60, 100), ("司马懿", 71, 98)]
# 按姓名升序排列
data_sorted_by_name = sorted(data, key=lambda x: x[0])
# 按智力降序排列
data_sorted_by_intelligence = sorted(data, key=lambda x: x[2], reverse=True)
print("按姓名升序排列:")
for item in data_sorted_by_name:
print(item)
print("按智力降序排列:")
for item in data_sorted_by_intelligence:
print(item)
```
输出结果如下:
```
按姓名升序排列:
('关羽', 99, 83)
('司马懿', 71, 98)
('张飞', 99, 45)
('赵云', 98, 88)
('诸葛亮', 60, 100)
按智力降序排列:
('诸葛亮', 60, 100)
('赵云', 98, 88)
('司马懿', 71, 98)
('关羽', 99, 83)
('张飞', 99, 45)
```
定义一个含有元素的元祖方法是
在 Python 中,可以通过在小括号内指定元素,来定义一个元组。例如,定义一个包含三个元素的元组可以写成:
```
my_tuple = (1, "hello", True)
```
这样就定义了一个包含一个整数、一个字符串和一个布尔值的元组。需要注意的是,元组中的元素可以是不同类型的。另外,元组中的元素是有序的,可以通过下标访问元素。