markdown码字工具:typora(这个很好用,我也是刚接触markdown语法,感觉挺有意思的)
我又发现了一个新办法,在typora码完字后直接选择导出成html格式,然后全文复制粘贴过来就好。但是遗憾的是微信平台不能粘贴图像,所以还需要手动粘图像。代码部分没什么问题。
IDE:thonny(老师推荐的,确实很好用。本来之前想用Visual Code的,但是折腾了半天都没太弄明白。这个简单易懂~可惜的是如果输错了是会提示在哪一行、什么问题,但是貌似不会把有问题的部分高亮显示出来。)
用python设计第一个游戏
新建窗口
print("-----hello,world-----") temp = input ("猜一个我想对你说的数字") guess = int(temp) if guess == 520 : print("厉害了,猜对了!") print("那你好棒棒哦") else: print("猜错啦!") print("不玩了")
↑ 第一次输入的版本,结果报错。原来是英文括号没输好。以后要注意括号。
↓ 以下是运行ok的版本。
print("-----hello,world-----") temp = input ("猜一个我想对你说的数字:") guess = int(temp) if guess == 520 : print("厉害了,猜对了!") print("那你好棒棒哦") else: print("猜错啦!") print("不玩了!")
按F5运行成功。激动~
注意
- python中缩进很重要。使用不当会报错。
- 注意区分中、英文符号
- : 冒号后回车会自动缩进。
- 注意区分python的命令模式和交互模式(<<<)
语法解释
print("-----hello,world-----") #文本显示 temp = input ("猜一个我想对你说的数字:") #返回input输入的值给temp(注:temp只是一个起的一个临时的变量名)。input是bif(python内置函数) guess = int(temp) #int() 函数用于将一个字符串或数字转换为整型。<http://www.runoob.com/python/python-func-int.html> 这个函数之后的课程还会讲。 if guess == 520 : #if,else语句。 == 代表等号,表示赋值。等号右边的值赋到等号左边的变量(guess)中 print("厉害了,猜对了!") #缩进后的内容表示属于上一行。即满足上一行之后,会执行缩进后的这两行。 print("那你好棒棒哦") else: print("猜错啦!") print("不玩了!")
流程图
# 此处用到的流程图工具是: process on
BIF
BIF=built-in functions 内置函数
- print 输入函数
- input 参数显示到屏幕上,要求用户输入数据,把数据返回(赋值)给变量。
在这个例子里,就是屏幕上会出现“猜一个我想对你说的数字:”-用户输入值-赋值给temp这个变量
- int 整形函数。将值变为整数
在这个例子里,就是将temp这个变量变为整数。
- 展示python中所有的BIF
dir(__builtins__)
- 了解BIF的功能
help(input)
课后练习
- 什么是BIF?
- 内置函数。built-in functions
- 用课堂上小甲鱼教的方法数一数 Python3 提供了多少个 BIF?
- 答案给的是68个,但是在官网上查的3.7版本的python是69个内置函数,增加了这个断点函数↓
breakpoint()
- 官网BIT介绍: https://docs.python.org/3.7/library/functions.html#breakpoint
- 在 Python 看来:'FishC' 和 'fishc' 一样吗?
对 Python 来说,fishc 和 FishC 是完全不同的两个名字,所以编程的时候一定要当心。不过 Python 会帮助解决可能因此出现的问题,例如只有当标识符已经赋值后(还记得吗,小甲鱼在课堂中说过 Python 的变量是不用先声明的)才能在代码中使用,未赋值的标识符直接使用会导致运行时错误,所以你很快就可以根据经验发现此问题。
- 这节课的例子中出现了“=”和“==”,他们表示不同的含义,你在编程的过程中会不小心把“==”误写成“=”吗?有没有好的办法可以解决这个问题呢?
Python 不允许 if 条件中赋值,所以 if c = 1: 会报错!
注:编程语言中,一个等号(=)代表赋值,两个等号(==)代表判断左右是否相等,返回true或false。在python中,if条件中不能赋值(=),要判断的是左边的变量是否等于右边的数字(==)
- 你听说过“拼接”这个词吗?
在一些编程语言,我们可以将两个字符串“相加”在一起,如:'I' + 'Love' + 'FishC' 会得到 'ILoveFishC',在 Python 里,这种做法叫做拼接字符串。
动手练习
- 编写程序:hello.py,要求用户输入姓名并打印“你好,姓名!”
temp = input ("请输入你的姓名:") print ("hello," temp)
↑ 第一次尝试,报错了。然后想到了上一个练习的最后一题,拼接。拼接允许两个字符串“相加”到一起,所以尝试加了个+
temp = input ("请输入你的姓名:") print ("hello,"+temp)
成功~
- 编写程序:calc.py 要求用户输入1到100之间数字并判断,输入符合要求打印“你妹好漂亮”,不符合要求则打印“你大爷好丑”
这个没有教过大于小于,所以就凭感觉试了一下把==换成了<,没想到真的成功了(^o^)/
temp = input("请输入1~100的数字:") guess = int(temp) if guess < 100: print("你妹好漂亮") else: print("你大爷好丑")
但是,检查了一下正确答案,发现老师是这样写的:
temp = input("请输入1到100之间的数字:") num = int(temp) if 1 <= num <= 100: print('你妹好漂亮^_^') else: print('你大爷好丑T_T')
我只考虑了小于100,忘记了大于1,也忘记了等于1和100。所以小于等于是:<=。且可以把变量放在中间。
一.为什么要学习Python
作为初学者,比起其他编程语言,Python是最容易上手的.Python追求的是找到最好的解决方案,而其他语言追求的是多种解决方案. Python在语言上非常解决自然语言,所以在阅读性是极佳的.不需要了解太多语法,你也看明白代码意思.
同时,Python功能也是非常强大的,使用Python编写代码时,你不需要太多计算机基础功底.不需要去关心程序底层实现细节.因为Python 有非常丰富的库,其中有官方提供的,也有开发者提供的第三方框架.也许你苦思冥想的功能,早有人已经将这个模块替你写好.你只要找到它,并调用它就行.作为一种动态解释性语言,让人们在写代码的时候可以更多的关注业务逻辑细节,而不需要花太多精力去关注数据类型定义、程序运行效率等
Python开发者不需要去造轮子的事情,你只要能将汽车跑起来就行.
二.Python工作分类
非常幸运的时,Python是一门语言,利用这门语言可以做到很多不同的事.相比前些年大火的移动端开发者,就明显多了很多选择.移动端开发者在工作的选择上只要安卓开发者或iOS开发者.今年像极了独木桥上拥挤的移动开发者,有人被挤下去,有人不断学习继续前行.但终归移动开发只能有1个方向而已.竞争压力便是不小的.
- 网站后端程序员,利用Python开发网站,例如国内用户活跃度不错的网站,豆瓣,知乎,国外的Youtube等.
- 自动化运维,运维工作开始趋向自动化,批量来处理大量的运维任务.而Python在系统管理上强大的优势,比如强大的开发能力以及完整的工具链.让越来越多运维人员开始学习Python.
- 数据分析师:Python能快速开发让越来越多数据分析师,选择Python作为开发语言.
- 游戏开发者:一般作为游戏脚本内嵌在游戏中,这样的利用游戏的高性能引擎,又可以利用脚本化开发的优点,只需要修改脚本即可调整游戏内容,不需要重新编译游戏.非常方便.
- 自动化测试.
- 网站开发
- 爬虫工程师
三.选择IDE工具(编程工具)
环境搭建好,不同计算机不同的环境搭建方式.可以根据自己的设备搭建.推荐使用PyCharm,不管是windows用户还是Mac用户都支持.社区版是免费的,专业版需要付费.我们使用社区版即可.对于开发而言,没有太多区别.
官方下载地址:https://www.jetbrains.com/pycharm/?fromMenu
四.编译器与解释器理解
关于编译器与解释器之间的异同,是Python面试中最为常见的一道面试题.作为Python开发者有必要了解.
不管是编译器还是解释器,它们的目的都是为了将高级语言代码翻译成机器可以识别的二进制机器码.在计算机底层传递的数据,只有0/1.所以需要把你写的代码翻译成不同的0/1.
那编译器与解释器有什么区别了?
image.png
image.png
- 举个例子,就像大家去餐馆吃饭,编译器方式,就等所有菜都上齐,你才开吃.而解释器,就是上一个菜吃一个菜.
编译器: 运行速度快,但任何改动都需要整体重新编译.但是可以脱离编译器环境运行.代表语言:C语言
解释器:运行速度相对而言不够快,但是部分改动不需要整体编译.不能脱离解释器环境运行.代表语言:Python语言
五.Python 运行机制
注意: 这个问题在面试中也是常见问题
Python语言作为动态解释型语言,它的运行机制如下图:
image.png
都会吐槽解释器型语言慢,但是Python也是此下了功夫来解决问题的.那就是使用pyc文件.
我们在写Python代码时,文件后缀一般以.py为后缀.在执行Programe 时,解释器都是逐行读取你写的源代码,并一行一行开始解释运行.每执行一次,就需要重复这个过程.就是在这样重复的过程中,造成资源浪费.于是为了减少这样重复性的工作,Python就引入了pyc文件.
pyc文件就是,将Python解释py文件的结果保存下来,这样就不用每次都去解释一次,直接使用pyc文件就可以了.这样就可以间接性提高程序运行速度.