编写程序,利用元组作为函数的返回值,求序列类型中的最大值、最小值和元素个数,并编写测试代码,假设测试数据分别s1=[9,7,8,3,2,1,55,6、s2=["apple","pear", "melon","kiwi"]和s3="TheQuickBrownFox"
时间: 2024-11-15 09:27:34 浏览: 16
数组最大值最小值_数组最大值最小值_最小值_
5星 · 资源好评率100%
在Python中,我们可以创建一个函数,它接收一个序列作为输入,然后使用元组(tuple)返回三个值:最大值、最小值和元素个数。对于字符串类型的序列,需要特别处理,因为字符串不是数字列表,我们无法直接计算最大值和最小值,但可以计算字符个数。
以下是函数的编写:
```python
def process_sequence(seq):
if isinstance(seq, str): # 判断是否为字符串
length = len(seq)
max_value = None # 字符串无最大值
min_value = None # 字符串无最小值
else: # 假设seq是一个数值列表
length = len(seq)
max_value = max(seq)
min_value = min(seq)
return (max_value, min_value, length)
# 测试数据
s1 = [9, 7, 8, 3, 2, 1, 55, 6]
s2 = ["apple", "pear", "melon", "kiwi"]
s3 = "TheQuickBrownFox"
# 计算并打印结果
result_s1 = process_sequence(s1)
result_s2 = process_sequence(s2)
result_s3 = process_sequence(s3)
print(f"For s1: Max={result_s1[0]}, Min={result_s1[1]}, Length={result_s1[2]}")
print(f"For s2: Max value for characters is the same as length ({len(s2)}), Min value is also the same.")
print(f"For s3: Max value is the entire string, Min value is the empty space, and Length is {len(s3)}")
```
在这个例子中,对于`s1`这个数值列表,我们得到了最大值和最小值;对于`s2`这个字符串列表,我们得到的是字符个数,因为字符串没有最大值和最小值的概念;对于`s3`这个字符串,我们同样只计算了字符个数。
阅读全文