python实例1.1:编写一个程序来计算并打印用户输入的数字列表的平均值(详解及其知识点拓展)

目录

一、主程序详细讲解

二、strip()和float()函数详细用法

三、try...except详细用法

四、列表用法及append使用方法详解

append() 方法

语法:

实例:


一、主程序详细讲解

下面是一个简单的Python程序,它可以接收用户输入的数字列表,然后计算出这些数字的平均值:

python

# 从用户那里获取数字字符串,使用逗号分隔
numbers_str = input("请输入一系列以逗号分隔的数字: ")

# 将字符串分割成列表
numbers_str_list = numbers_str.split(',')

# 初始化数字列表
numbers = []

# 遍历字符串列表,将每个元素转换为整数,并将其添加到数字列表中
try:
    for number_str in numbers_str_list:
        numbers.append(float(number_str.strip()))  # strip()移除空白字符,float转换为浮点数

    # 计算数字列表的平均值
    average = sum(numbers) / len(numbers)

    # 打印平均值
    print("输入数字的平均值是:", average)

# 如果在转换时遇到错误(如非数字字符),则捕获异常并打印错误信息
except ValueError as e:
    print("请输入正确的数字,确保是以逗号分隔的。错误信息:", str(e))

要使用这个程序,你可以直接拷贝到一个.py文件中,然后运行这个脚本,或者在一个交互式的Python环境里(例如 IPython 或者一个Python shell)中执行。程序会提示你输入一系列以逗号分隔的数字,输入完成后按回车即可看到计算出的平均值。

二、strip()float()函数详细用法

在这段代码中,strip()float()函数用于处理和转换用户输入的内容。

1.strip() 功能:

strip() 是一个字符串方法,用于移除字符串两侧的特定字符,默认情况下会移除空白符,包括空格、制表符(\t)、换行符(\n)等。这在处理用户输入时很有用,因为用户可能会在输入数字之前或之后不小心输入额外的空白字符。

例如:

python

   input_string = " 42 "
   clean_string = input_string.strip()
   print(clean_string) # 输出 "42",两边的空格被移除了

在这个程序中,strip()函数确保每次从用户输入的字符串中提取出的数字字符串两侧没有多余的空白符,这样可以准确地将其转换为数字。

2.float() 功能:

float() 是一个内置函数,它将一个合法的字符串或数字转换成浮点数。在处理数字时,使用float()可以接受整数和小数,这为用户提供了更多的灵活性。

例如:

python

   num_str = "3.14"
   num_float = float(num_str)
   print(num_float) # 输出 3.14

在这个程序里,输入的数字可能是整数也可能是小数,所以使用float()来处理字符串,将其转化为浮点数,从而可以进行数学计算。

try块中,strip()float()的组合允许我们接受用户输入的字符串,清理它(移除可能的空白符),然后将其转换为浮点数以便计算平均值。如果float()函数在尝试转换非数字字符串时抛出ValueError异常,通过try...except捕获这个异常并向用户提示错误信息,确保程序不会因为意外的输入而崩溃。

三、try...except详细用法

在编程中,try...except语句是一种错误和异常处理机制,它使得程序能够优雅地处理运行时可能出现的错误。异常是一个事件,它在程序执行过程中发生,可以打断程序的正常流程。通过try...except语句,程序可以在发生异常时继续执行,而不是完全停止。

下面是try...except块的基本用法:

python

try:
    # 尝试执行的代码块
    # 可能会发生错误的代码
    pass
except SomeException as e:
    # 当上面的try部分的代码发生特定异常时执行的代码块
    # e是捕获到的异常对象
    pass

  • try子句:在try子句中编写可能会引发异常的代码。如果在try块中的代码执行时没有出现错误,则继续执行try块后面的代码;如果出现了异常,则立刻停止try块中剩余代码的执行,跳转到except块。

  • except子句:except子句用于捕获try块中发生的异常。在这个子句中,你可以指定想要捕获的异常类型。例如ValueErrorTypeError, 或者是通用的Exception,它会捕获几乎所有的异常情况。在except子句中,你可以定义当捕获异常后程序应当怎样响应——可能是打印一个错误信息,可能是进行一些修正措施,或者是重新抛出异常让上层代码处理。

  • as e语法:使用as e(其中e可以是任何变量名)可以将捕获的异常实例绑定到一个变量上。e通常包含了异常的描述信息,可以用来获取错误详情并展示给用户,或者记录到日志中。

这是一个使用try...except结构的简单示例:

python

try:
    number = int(input("请输入一个整数: "))
    print("输入的数字是:", number)
except ValueError as e:
    print("发生了一个错误:", e)
    print("这不是一个有效的整数。")

在这个例子中,如果用户输入了非整数的字符串,int()函数会引发一个ValueError异常。由于这个错误是在try块中发生的,所以控制流程马上转到相应的except ValueError块,程序不会崩溃,而是打印出一个错误信息,并提示用户输入了无效的整数。

try...except结构非常强大,能够帮助程序处理各种意外情况,使程序更加健壮和用户友好。

四、列表用法及append使用方法详解

在Python中,列表(list)是一种基本的数据结构,它可以容纳多个元素,并且这些元素可以是不同的数据类型。列表是可变的,这意味着你可以添加、移除或改变列表中的元素。

列表的常规操作和函数有:

  • 创建列表:直接用方括号 [] 或使用 list() 函数。
  • 访问元素:使用索引来访问列表中的元素,索引从0开始。
  • 修改元素:通过指定索引来修改元素的值。
  • 添加元素:使用 append()extend() 或 insert() 方法。
  • 删除元素:使用 pop()remove() 或 del 语句。
  • 列表切片:使用切片操作来获取列表的部分元素。
  • 遍历列表:使用for循环来访问列表中的每个元素。

append() 方法

列表的 append() 方法用于在列表末尾添加一个元素。这是个很常用的操作,因为它不仅效率高,而且编码简单。

语法:

python

list.append(element)

  • list 是你要添加元素的那个列表对象。
  • element 是你将添加到列表末尾的对象。

实例:

python

# 初始化一个空列表
fruits = []

# 使用 append() 方法向列表添加元素
fruits.append("apple")
fruits.append("banana")
fruits.append("cherry")

# 打印添加元素后的列表
print(fruits)  # 输出: ['apple', 'banana', 'cherry']

在这个例子中,我们首先创建了一个空列表 fruits,然后通过调用 fruits.append() 方法三次,分别添加了 'apple''banana' 和 'cherry' 这三个字符串作为列表元素。在每次调用 append() 方法后,新元素都会被添加到列表的末尾。

append() 方法每次只能添加一个元素。如果你想一次性添加多个元素,应该使用 extend() 方法或者 + 操作符将两个列表拼接起来。当你要添加的不是一个列表,而是一个元素时,继续使用 append() 是最佳选择。

  • 13
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

清风 001

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值