本文章根据b站up"求知讲堂"的【求知讲堂python+人工智能 94天完整版 学完可就业-哔哩哔哩】 https://b23.tv/kEwuXSk 视频教学写成.
第一天
p1历史背景介绍
没啥看的,就记住一个作者取名python想要一种神秘的感觉,神秘蟒蛇是吧
p2学习python优缺点
p3python环境的安装,和第一个程序建立
进行了python环境的安装,和第一个程序建立,安装好python之后win+r打开命令行,输入cmd可以进入命令行,输入python查看python版本信息等内容.exit()或者quit()可以退出python
在该文件夹下创建一个.txt文件,然后修改后缀和名字,在该目录的地址行输入cmd即可在命令行中直接跳转到该目录,输入python 文件名.py,回车即可执行该程序.
此时我们尝试多行print,ctrl+s保存一下py文件,然后在命令行窗口运行,发现可以.
以上是一种办法,那如果我的文件是放在e盘而命令行默认在c盘怎么去找呢,用e:
即可找到文件并运行
作业:尝试在命令行输出"人生苦短,我用python"
在刚刚的文件里进行修改并保存,然后运行即可
p4注释
单行注释:
ctrl+/可以用来快速注释
这段话本来不是注释,在我在该行ctrl+/时就会把该行变成注释
可以看到运行之后结果不会改变(注释也不会显示)
当我们把代码注释掉,发现它也不会运行
多行注释使用三个'或者三个",如下图
如果只在前面打呢?会出现报错:EOF while scanning triple-quoted string literal,意思是注释点不成对,因为我们只在注释之前用了三个',而没有在后面用.
注意
如果是linux系统还有一个注释,必须放在代码最开头,表明解析器的路径和编码格式,python一些版本已经默认使用UTF-8编码格式,因而有时候第二行可以忽略.
p5介绍pycharm
...
新建一个project,然后在project里面新建一个.py文件,右键编辑区选择run...即可运行
编辑多行以后会有以下图标,三角是运行,虫子是调试
p6p7变量和数据类型
python不需要指定变量的数据类型,给里面存放了什么类的值,它就是什么类型.变量定义时必须给它赋一个值.
如何定义和使用?
定义规则: 变量名=数据
当想要使用这个值时必须通过变量名来使用,如下图
此时我们再写a=20,那么20对应的地址会覆盖掉10对应的地址在a上面,因而a会变成20,a是可以改变的量
如果把a换成'吴老师'也是一样可以的
数据类型
通过什么方式能知道我们赋值的这个变量是什么类型的呢?
type方法可以查看变量类型
print(type(a))即可,如下图
那'吴老师'是什么类型?可以从下图看到变成str类型
那么12.67,True又是什么类型?如下图
高级类型
b=()时b是什么类型呢,如下图,这种tuple就是元组类型
{}是字典类型,[]是列表类型,如下图
变量命名规则
1.必须大小写字母或_开头
2.其他可以是数字,字母,_
3.区分大小写
4.python关键字不可作为变量名,怎么知道哪些是python关键字呢?
命令行输入import keyword 然后keyword.list
然后自己尝试一下命名
命名规范
p8算数和比较运算
算术运算符
比较运算
可以看到比较运算符输出的是一个布尔值.
p9逻辑运算符
and比较严格,需要两边都是true才能显示结果为true
逻辑运算符存在优先级
括号最大,其次是not,and,or
实例:and优先级大于or,因此true or true or false,结果是true.
p10赋值运算符
赋值运算符算是算术运算符的一个补充.
实例:
发现报错了,因为目前版本不支持输出复杂的式子,需要先进行运算再输出结果.以下这种方式就可以
再试试别的,a**=2也就是a的平方
p11 python输入和输出
shift+f10运行
注意一个萝卜一个坑,前面写了后面也要相应给它注明出自哪里
输出字符
输出换行\n
常见格式化符号
(%d不仅可以代表整数还可以表示浮点数)
如果是list怎么输出呢?用*就可以啦
格式化输出完成作业
格式化输出的其他方式format
多个的format输出
输入input
注意我们现在输入的都是字符类型
有的时候我们发现想要一个输进去的是数字的时候就有问题了,所以
需要强制转换
p12-p19
开始之前先对之前进行总结了一番,比较重要的是我们之前一篇里面的
赋值运算符,是先运算再赋值
流程,流程控制,流程控制分类
选择流程
单分支
双分支
多分支(各个选择都互斥,且必定有一个符合,else看情况,可以不写)
多分支多条件练习(猜拳机)
(我先自己做的,然后又根据老师的改了一些)以下是代码
# 下面是猜拳游戏
import random
people=int(input('选择你要出的:【1.石头2.剪刀3.布】'))
computer=random.randint(1,3)#产生一个1-3的随机数
print('电脑出的是{}【1.石头2.剪刀3.布】'.format(computer))
if people==1 and computer==2:
print('你赢啦!')
pass
elif people==2 and computer==3:
print('你赢啦!')
pass
elif people==3 and computer==1:
print('你赢啦!')
pass
elif people==computer:
print('平局')
else:
print('你输了!')
pass
print('结束')
※※※ifel嵌套※※※
循环流程
eg:输出1-100
猜拳游戏修改成循环的:
# 下面是猜拳游戏 修改成循环的
count=1
import random
while count<=3:
people = int(input('选择你要出的:【1.石头2.剪刀3.布】'))
computer = random.randint(1, 3) # 产生一个1-3的随机数
print('电脑出的是{}【1.石头2.剪刀3.布】'.format(computer))
if people == 1 and computer == 2:
print('你赢啦!')
pass
elif people == 2 and computer == 3:
print('你赢啦!')
pass
elif people == 3 and computer == 1:
print('你赢啦!')
pass
elif people == computer:
print('平局')
else:
print('你输了!')
pass
count+=1
print('结束')
输出99乘法表
注意输出的print后面加end,因为print默认换行
代码:
j=9
while j>=1:
i = 1#一定放在这个地方,放在while之前不顶用
while i<=j:#一开始写成了i<=9,然后输出方块,不符合调节,注意看九九乘法表规律
print('{}*{}={}'.format(i,j,i*j),end=" ")
i+=1
pass
j-=1
print()
pass
打印直角三角形
hang=1
while hang<=7:
lie=1
while lie<=hang:
print('*',end=' ')
lie+=1
pass
print()
hang+=1
pass
倒三角:(改三行就行)
hang=7
while hang>=1:
lie=1
while lie<=hang:
print('*',end=' ')
lie+=1
pass
print()
hang-=1
pass
扩展:打印等腰三角形
# 等腰三角形
hang=1
while hang<=7:
kong=1
while kong<=(7-hang):
print(' ',end='')
kong+=1
pass
xing=1
while xing<=hang:
print('*',end=' ')
xing+=1
pass
print()
hang+=1
pass