Python 核心编程 答案 第六章307


第 1 节:

练习:

编写一个函数,接收两个整数参数,并返回其中较大的那个。

答案:```python
def max_of_two(a, b):
if a > b:
return a
else:
return b
```
第 2 节:

练习:

编写一个函数,接收一个列表参数,并返回列表中最大的元素。

答案:```python
def max_of_list(lst):
max_value = lst[0] # 假设第一个元素为最大值
for x in lst:
if x > max_value:
max_value = x
return max_value
```
第 3 节:

练习:

编写一个函数,接收一个列表参数,并返回列表中最小元素的索引。

答案:```python
def min_index_of_list(lst):
min_index = 0 # 假设第一个元素为最小值
for i in range(1, len(lst)):
if lst[i] < lst[min_index]:
min_index = i
return min_index
```
第 4 节:

练习:

编写一个函数,接收一个字符串参数,并返回字符串中出现次数最多的字符。

答案:```python
import collections
def most_frequent_char(string):
char_counts = (string) # 统计每个字符出现的次数
return max(char_counts, key=) # 返回出现次数最多的字符
```
第 5 节:

练习:

编写一个函数,接收一个列表参数,并返回列表中所有奇数的和。

答案:```python
def sum_of_odds(lst):
odd_sum = 0 # 奇数和
for x in lst:
if x % 2 == 1: # 判断是否为奇数
odd_sum += x
return odd_sum
```
第 6 节:

练习:

编写一个函数,接收一个字典参数,并返回字典中键的最大值。

答案:```python
def max_key_of_dict(dict):
max_key = max(dict, key=lambda k: dict[k]) # 使用 lambda 表达式比较键的值
return max_key
```
第 7 节:

练习:

编写一个函数,接收一个字符串参数,并返回字符串中所有单词的长度之和。

答案:```python
def sum_of_word_lengths(string):
words = () # 分割字符串成单词
return sum(len(word) for word in words) # 使用生成器表达式计算单词长度之和
```
第 8 节:

练习:

编写一个函数,接收一个列表参数,并返回列表中所有元素的平均值。

答案:```python
def average_of_list(lst):
if len(lst) == 0: # 处理空列表的情况
return 0
return sum(lst) / len(lst) # 计算元素的平均值
```
第 9 节:

练习:

编写一个函数,接收两个字符串参数,并返回两个字符串的合并后字符串。

答案:```python
def concatenate_strings(str1, str2):
return str1 + str2 # 使用加号 (+) 进行字符串合并
```
第 10 节:

练习:

编写一个函数,接收一个列表参数,并返回列表中元素数量最多的值。

答案:```python
from collections import Counter
def most_frequent_value(lst):
counts = Counter(lst) # 统计每个元素出现的次数
return counts.most_common(1)[0][0] # 返回出现次数最多的元素
```

2024-12-04


上一篇:Web 编程:Python 的魅力

下一篇:Python 核心编程第六章答案