新手入门学习python 过程必定有很多疑惑和不理解的地方
我会慢慢更新前8关和后面课程的学习笔记及心得,争取用我自己踩过的雷和出现错误的地方,给大家提个醒
第8关,没有很多知识点,主要是告诉大家怎么做学习笔记和深入理解代码的写作和运行。
第8关的重点在两个练习题中,练习题中所要学习的知识点为:
列表的合并及排序
计算列表中的数值平均值,并挑出低于平均值的数值
首先,咱们先给知识点中九九乘法表 的代码及相关代码扩展
(这里的代码是无序排列,打出来的乘法表并没有排列好的)
for i in range(1,10):#设i的取值在1到10
for j in range(1,10):#设j的值在1到10
print(‘%d*%d=%d’%(j,i,i*j),end=’‘)
print(”)
#end=’‘控制换行行数和结尾字符
#例子
print(‘howareu’, end=’ ‘)
print(‘i’mfine,thanks’, end=’ ‘)
>>>howareui’mfine,thanks
在上述代码中,是不是有看到%d这样的字符?
不懂 %d 没关系,咱们接着来进行扩展。
%d、%f 、%s都称作格式化字符串,那具体什么意思呢?
咱们先看下面的代码!
a=10
b=3.1415
c=’哈哈’
print(‘我今年%d岁’ %a) #%d表示填充整数到指定的位置里,指定整数为 d=a=10
print(‘圆周率 %f ‘ %b) #%f表示填充浮点数到指定的位置里,指定点数为 f=b=3.1415
print(‘我%s大笑’ %c) #%s表示填充字符串到指定的位置里,指定字符串为 s=c=哈哈
#(这里要切记, 一定不要忘了在print中的a、b、c前加上%)
了解了格式化字符串后,我们开始打印进行排序的九九乘法表,其实,这里排序(每一个数字乘完后的换行)也只是利用了 if中的if i == j :
for i in range(1,10):
for j in range(1,10):
print(‘%d*%d=%d’%(j,i,i*j),end=’ ‘)
if i==j: #为了换行,既1×1=1
1×2=2 2×2=4
1×3=3 2×3=6 3×3=9
print(”)
break
小知识点巩固完,以下是两个练习的笔记和扩展
练习一
python 列表排序,这里主要要了解的知识点为sorted()函数
定义:
sorted()函数,可以按照长短,大小,英文字母的顺序给每个列表的元素进行排序,既正向排序。
示例:
sorted函数并不会改变列表本身,可以将其看作先对列表进行复制,在进行顺序的整理:
在以上的基础上,补充扩展函数 —–reverse()函数,既逆序整理。
示例
练习二
计算平均值并挑出在平均分下的成绩
面对风变里给的代码参考中,出现了一个新的模块运用:Numpy
numpy在课程里并没有讲到,在谷歌后了解其代码格式为:
“ import numpy as np ”
Numpy模块 除了能在风变编程中的虚拟环境中运行外,自带电脑上如果没有安装python和Numpy,numpy是运行不了的
我电脑上没有安装numpy,所以练习2我用的是笨办法来计算平均值。
首先,这里先要补充两个新函数—Sum()函数、Round函数
1、sum()函数为python中自带的求和函数,函数原型为:
sum(iterable,start)
iterable—可迭代对象,如:列表(list)、元组(tuple)、集合(set)、字典(dict).
start—–指定相加的参数,如果没有设置,则为默认值0.
2、round()方法的作用是对浮点数进行四舍五入
#round(x)返回浮点数的四舍五入的值
round(2.6)
>>>3
#round(x,n)返回浮点数x的四舍五入的小数点后的n位数值
round(2.246,2)
>>>2.25
了解sum()函数和round()方法后,接下来就可以用笨办法完成练习2啦~
(len()函数是统计列表中元素个数的)
代码
运行结果
最后,咱们再来回忆下第八关含了哪些函数:
格式化字符串: %d 、%f 、%s
排序:sorted()函数、逆序 reverse()函数
平均值用到的 sum()函数 和 len()函数 以及 round() 四舍五入的浮点数方法。