###学前动员###:老男孩IT培训的师资力量
讲师:邱彦涛;
项目经理:春生;
班主任:任安安;
银角大王:武sir;
金角大王:Alex;
肖锋:Python web 框架;
马老师:数据库+框架+数据库;
赵博士:清华大学计算机博士;
一 学习内容简介
- python的来源,历史发展
- 如何编程python的程序
- 如何编写变量。变量的命名规范
- 常量(写法)
- 变量的数据类型(int,str,bool)
- 用户交互(input),只能跑直线,
- 流程控制(让程序有不同的方向选择)
- 循环(while)
二 万恶之源:Python简介
python的创始⼈人为吉多·范罗苏姆(Guido van Rossum)。1989年年的圣诞节期间,吉多·范罗苏姆为了了在阿姆斯特丹丹打发时间,决⼼心开发⼀一个新的脚本解释程序,作为ABC语⾔言的⼀一种继承。
C语言的延续,吉多.范罗苏姆(龟叔),1989年开发。Python名字来源于电视剧。
Python目前应用排名3
- Java:世界第一,在国外不火,在国内用Java比较多,在国外属于中上游。大型企业级应用,比如股票金融、联通。优势:比较稳定。
- C:主要是操作系统。
- Python:主要是人工智能。
- C++:主要是大型游戏,比如在C上面的攻击效果。
- VB:主要是国企业在用,一般是大学课程讲的东西。
- C#:主要游戏,ps4、游戏机中跑的东西是C#的,吃鸡也是该语言
- Javascript:网页界面
- PHP:全世界最好用的编程语言。做网页和网站,领域比较单一。
- SQL:是万恶的根源,数据库,最通用的语言。
- Objective-C:手机上的系统。这是苹果系统。安卓的程序员也死的很快。
每个语言都有擅长和不擅长的,没有可比性。
Python的 主要应用的领域:
云计算: 云计算最⽕火的语⾔言, 典型应⽤用OpenStack
WEB开发: 众多优秀的WEB框架,众多⼤大型⽹网站均为Python开发,Youtube,Dropbox, ⾖豆瓣。。。, 典型WEB框架有Django
科学运算、⼈人⼯工智能: 典型库NumPy, SciPy, Matplotlib, Enthoughtlibrarys,pandas
系统运维: 运维⼈人员必备语⾔言
金融:量化交易,金融分析,在金融⼯工程领域,Python不但在用,且用的最多,而且重要性逐年提⾼。原因:作为动态语⾔言的Python,语⾔言结构清晰简单,库丰富,成熟稳定,科学计算和统计分析都很牛逼,⽣生产效率远远⾼于c,c++,java,尤其擅⻓长策略回测
图形GUI: PyQT, WxPython,TkInter
三 Python是一门什么语言:
Python是一门解释性,弱类型的高级语言。
Python的程序是通过编译器逐行解释,并执行的.
1.解释型和编译型的区别:
(1)编译型:C语言必须用编译器转化成,是编译型,一次性把英文数字等全部编译成二进制,机器对二进制是敏感的,编译型语言是一次编译,到处运行,运行效率高。
(2)编译型:Python的程序是通过解释器,逐行的解释执行,把英文数字等一行一行的解释成二进制,然后一行一行的转给计算机。由于解释器所在,运行效率低,开发效率非常高。【目前的所有的游戏都是编译型】
2.Python的解释器
Cpython(该解释器是由C语言编写,底层是C,上层是Python,官方提供的CPython)
Ipython(基于CPython开发的。交互和CPython有一些区别)
JPython(和Java平台相关的Python解释器)、IronPython(和.net平台相关的Python解释器)
PyPy(把Python程序一次性编译。然后统一执行,把Python强行转换成二进制,其语法与Python有些许不同)
3.Python的运行方式
我们的程序是运行在Python解释器上的。好处:程序不是直接面对的操作系统,而是面对的解释器,只要更换解释器,就可以实现无缝跨平台,比如Linux和windows。
四 Python的发展历史
1.龟叔1989年开始写Python
2.1991年Python的编译器诞生
3.1994年Python1.0
4.2000年Python2.0:整体规划,加入内存回收机制。
5.2008年Python2.6(由于其开发性,受其他语言的影响,Python面临着挑战。)和Python3.0(把Python2中较好的程序,打包整理成Python3的版本,这两个版本差距比较大)。
6.2010年Python2.7,在2020年终止更新。
五 第一个Python程序
1.安装Python程序
2.python的命令行模式:在python中直接输入,需要重新写,没办法保存,需要把代码写在.py文件中,这是很大的弊端。
3.先进入d盘:输入d:
4.cd+空格:切换目录 然后python +空格+文件.py就可以执行该文件。
5.Note++中出现如下错误:\xba需要改成utf-8,然后重新写一下。
6.必须用英文状态的,搜狗输入法的设置方式。
六 变量
1.变量就是可变的值:变量的本质就是一个符号,负责存储过程运行中产生的值,供给后面程序使用。比如money=0,一个月后,老板发工资money=200,又花了就变成了money=100,这个money就是变量。
2.变量的命名规范:有些事Python规定的,有些是习惯而成的。
(1)变量必须由数字,字母,下划线构成。不能使用@18,就会显示语法错误.
(2)不可以数字开头,更不能是纯数字.比如1A.23是错的,而A1就是正确的.出现下列情况就会冲突.
(3)不可以使用Python的关键字(官方已经使用的名字,比如if\while\else\elif).颜色都有特别的区分.
(4)规范性的习惯:
(5)不要用中文,国际化的字符集是不同的.
(6)不要太长,不容易让人读懂.
(7)区分大小写,下面程序会报错.一般大写是常量.
(8)尝试用英文简称,争取变量的名字一定要人看懂.
(9)推荐使用驼峰或下划线命名比如NameOfKen或name_of_ken.
七 常量
常量:就是不变量的,比如生日\pi(π)
1.绝对的常量在Python中是不存在的,一般认为大写字母就是常量,不要轻易修改.如下:
2.直接写一个数字或者写一个值:比如print(18)
3.常量和变量的作用:(1)存储,比如猪肉的应用.
4.单个等号 = 的说明:
单个等号 = 的运算级是所有运算级是最低的.把右边的全部算完,才算=;
比如:先算*/+-,然后才是=;
必须是先把=右边算完,然后赋值给=左边
双== 判断:常用if中的判断语句.
八 变量的数据类型(int,str,bool(布尔))
1.int:整数,没有小数点,比如1.25元就是小数.随便给出一个数字就是整数,比如12\34等都是整数,不需要””\’’等特殊符号.一般都是+-*\:但是当出现10/3的时候就会出现下面情况.这个’5’是计算机底层原因造成的.整数是可以完美统计的,但是0-1之间的小数是无法统计的,用有限的空间解释无限的空间,其他语言都是这样,主要是处理精度问题.除法\运算可能不会像你想象的那么完美.如果追求完美,可以把计算的小数扩大一亿倍,然后就算完成,再缩小一亿倍.
[补充:整除\余数\次幂]
\\ 整除(商)
% 余数
** 次幂:比如print(3**3)
2.str:字符串,编程界使用频率最高的数据类型.只要用双引号””,单引号’’,三个单引号’’’’’’引上的都是字符串.但是三个单引号是可以跨行的.[用单引号开头,用单引号结尾,不能单双配对]
(1) 字符串之间可以相加 + :两个字符串拼接,不允许字符串和数字相加.
(2)字符串之间*,比如ken*5,展示的是5遍ken:kenkenkenkenken.
3.bool:布尔
(1)命题:真命题(True),假命题(False)
(2)布尔值只有两个值:True和False
(3)作用:条件判断.
[补充type\注释]
1.type的用法:查看数据类型.
2.注释:很重要,不要忽视注释的重要性.方便别人,也方便自己.
(1) 普通的行注释: # 注释的内容,可以用排除法,调节bug.
快捷键:control+/,就可以把选中的语法全部单行注释.
(2) 块注释:一次性注释一大块.比如三个单引号’’’’’’或三个双引号””””””:
九 用户交互(input)
可以让我们输入一些东西,输入一些东西,然后赋值给等号左边.
input:获取用户输入的内容,赋值给前面的变量,程序会停留在input,等待客户输入.
例如,简单的计算器出现问题,input自动获取的是字符串,如需计算,需要数据类型转换.
即:把字符串转化成数字int(),
你想把谁转化成谁,就用int括起来,
字符串必须是数字,不能是字母
十 if语句的流程控制
语法1: if+空格+条件判断:+回车
tab+语句块
#只有tab才能产生从属关系.
#大于号之前的是字符串,而之后是数字,所以报错,需要int()转化.
调整后:
执行流程:判断条件为真,如果为真,则执行if,否则不执行.
语法2:else
if 条件判断
If-语句块
else:
else-语句块
执行流程:判断if,如果为真,执行if;如果为False,执行else.
语法3:elif
If 条件判断:
If-语句块
elif 条件判断:
elif-01-语句块
elif 条件判断
elif-02-语句块
……
else:
else-语句块
执行流程:判断条件是否为真,如果真,执行if,如果elif-01 为真,执行elif-01,以此类推.如果以上条件都不成立,执行else的成绩.
例如:>=90#大于等于90分,是优秀. >=80#大于等于80分,是良好.默认小于90大于等于80.即:如果有一个条件成立了,其他条件就不执行了.
!= 不等于 !=67 不等于67
语法4:if嵌套
if语句可以互相嵌套.但是一般写程序不要超过5层.最好在3层左右.
[补充]and 并且,左边和右边同时成立
例如:判断一个人是男女,年龄,身高等条件判断.
十一 while 循环
1.while是一个不断循环,可以反复的执行同一段代码.
While 条件判断:
循环体
执行流程:如果条件为真,如果真,则执行循环体,在判断条件是真,如果真继续循环.直到……条件为假.循环结束.
例如1:东北你愁啥? 瞅你咋了,再收个试试…的死循环
#此循环不能停,是死循环.
#ctrol+c才可中断.
2.break和continue的区别
(1)Break:彻底终止循环,跳出循环,主要应用于在不知情情况下,找到了结果,就退出.
(2)Continue:停止当前本次循环,继续下一次循环.在程序执行过程中,有特殊情况,又不影响整体情况下,继续寻找下一次.
例2:不能打断输入循环:
#此时不能出来,只能不断循环
#break 打断,彻底打断本层while循环.
例3:通过常量Q打断
例4:continue:打断,终止当前本次循环,继续执行下一次循环.
十二 练习
练习01:让程序能数数,从1到100;
除了67都能打印[不打印67]
练习02:计算1+2+3+……+100=?
[在循环的过程中.本次运算需要之前的所有数字的运算的结构,需要累计运算]
因此需另一个sum变量,sum=sum+i
练习03:登录验证:数据应该放在数据库中,目前没学,自己建个简单库就行.