这道基础题,在不同时间来看,所关联的知识点不同。作为萌新的我,为此特意整理了学习笔记。
先说说我的解题思路,再分享我的学习笔记。解题思路如下:
解答方式A:使用列表、max和min
我现在懂了内置函数后,直接求解最大值最小值,简直太方便了。
# 从输入获取 10个 数字,并保存到列表 nums 中
n = 10
nums = []
for i in range(n):
num = int(input("输入任意整数>>>"))
nums.append(num)
# 获取最大值和最小值
imax = max(nums)
imin = min(nums)
# 采用 str.format() 打印结果
print("输入生成的10个数字为{},最大值为{},最小值为{}".format(nums,imax,imin))
解答方式B:未使用列表、min或max
不好意思,认真又看了一遍题目,发现列表也不能用,如果不用列表,也不需要保存所输入的10个数字的话,那么一边从输入获取数字,一边比较大、小,那么就行了。代码如下:
# 从输入获取 10个 数字,每次判断是否为最大值、最小值
n = 10
imax = 0
imin = 0
for i in range(n):
num = int(input("输入任意整数>>>"))
if num > imax:
imax = num
if num < imin:
imin = num
print("10次输入获取的数字中,最大值为{},最小值为{}".format(imax,imin))
解答方式C:使用列表,不使用min和max
拆分需求:
1、从输入获取10个数字
a) 从输入获取数字,采用input() 方法,但它的返回值是 string,所以记得要 int() 返回整数
b) 需要获取10个,那么就采用for循环10次 a即可;想要保存着10个数字,列表是最好用的数据容器
2、求这10个数字的最大值
如果不能采用内置函数 max() 的话,那么需要自己用 for 循环来找到最大值。设定最大值为 imax 初始值为0,依次取列表中的每个值与 imax 作比较,比imax大,就把imax重新赋值为该数。
3、求这10个数字的最小值
如果不能采用内置函数 min() 的话,那么需要自己用 for 循环来找到最小值。和求最大值的思路完全一样。
4、把以上代码整合,完成答题。
# 从输入获取 10个 数字,并保存到列表 nums 中
n = 10
nums = []
for i in range(n):
num = int(input("输入任意整数>>>"))
nums.append(num)
# 获取最大值和最小值
imax = 0
imin = 0
for num in nums:
if imax < num:
imax = num
if imin > num:
imin = num
# 采用 str.format() 打印结果
print("输入生成的10个数字为{},最大值为{},最小值为{}".format(nums,imax,imin))
大家喜欢通过做题来提升技能,但答题千万不要仅仅追求做对万岁,而要揣摩其中的知识点,巩固学习;最好能试试多种解法;以及如果知识点还很生涩,一定要做学习笔记。
下面是我的学习笔记。
第一个需要记忆的知识点:内置类型(数据容器)
知识点:
字符串、range()构造的等差数列、列表、元组、集合、字典,这些python中的基础的数据容器,都可以采用 for...in... 来逐个访问里面的每个元素。
延伸阅读:
在 Python官方文档,以上称之为内置类型:https://docs.python.org/zh-cn/3.8/library/stdtypes.html 里面有很多以后常用的方法。
代码展示:
for ...in... 代码的写法都一样呢,新手一定要自己多敲几遍并运行,保证记住吖。
a = [1,2,3] #可以改成以上其它数据容器,来观察每一种的执行结果
for i in a:
print(i)
第二个需要记忆的知识点:内置函数
Python 有很多内置函数,列表在官方文档:https://docs.python.org/zh-cn/3.8/library/functions.html 这些也是学习python必须要掌握的基础知识。
其中你的题目中可以用到的有:
sum() 用于求和,
len()用于计算长度(有多少个元素),
min()用于获取最小元素,
max()用于获取最大元素。
上面这几个内置函数,都还蛮好记忆的。
---完---
我是 @yuxiu · 自学python的萌新,期望结交更多同学一起交流 ❤
我的使命:不要做知识的搬运工,要做方法论的传道者。
欢迎点赞、关注、分享三连 ღ( ´・ᴗ・` )