官网:https://www.python.org/
诞生:1989年底诞生,1990年V1发布,2000年V2发布,2008年V3发布(不兼容V2),2017年随着AI的崛起而流行
特点:简单、跨平台、应用广泛、解释执行、运行速度并不快
应用领域:运维、爬虫、桌面应用、科学运算、Web应用、AI
3.搭建Python开发环境
下载并安装Python解释器
下载地址:https://www.python.org/downloads/windows/
注意:默认安装路径的地址不在C:/Program Files;此处必须勾选Add Python to PATH —— 否则无法直接在命令行执行python命令
Python两种运行模式:
①交互式执行:输入一行回车执行一行——适合测试
直接在命令行输入python进入交互模式;
输入一行命令,回车,立即执行;
退出交互式环境,输入quit()或者exit();
②脚本式执行:一次性执行某个文件中的所有语句——真正项目
把所有语句书写在一个.py文件中,交给python解释器一次性执行:
python x.py
C系:C、C++、C#、Java、PHP、JS
Python不属于C系语言
Python基础语法说明:
①语句后可以写分号也可以不写
②严格区分大小写 (常见语言中,只有SQL不区分大小写!)
③Python不使用//和/**/做注释;换为:
#单行注释内容
''' 多行注释 '''
""" 多行注释 """
④Python中一行语句开头决不能随意添加空格/TAB——空白字符用于表示执行主体的开始和结束!
4.Python的变量和常量
创建变量: uname = 'dangdang'
查看变量类型: print( type(uname))
输出变量: print( uname )
修改变量: uname = 'dingding'
删除变量: deluname
说明:
①Python属于“弱类型语言”,变量不需要声明类型,可以先后赋值为不同类型的值
②变量名中可以包含数字、字母、下划线、汉字,但不能以数字开头
③Python有一些特殊预定义变量名,形如:__xxxx__,故自定义变量名不推荐使用此形式
④变量名不允许是系统关键字
⑤Python中没有声明常量的方法!没有const关键字
小知识:如何查看Python中的所有关键字:
在交互模式下,输入 help("keywords")
Python学习手册:https://docs.python.org/zh-cn/3/tutorial/index.html
Python API 参考: https://docs.python.org/zh-cn/3/library/index.html
5.Python中的数据类型
提示:不同语言间最大的差别在于“数据类型”,语言调性、应用领域往往都是由数据类型决定。
详细信息参考:https://docs.python.org/zh-cn/3/library/index.html
数字类型:
①int:整数,Python支持无限长度的整数!有全局转换函数int( )
②bool:布尔,Python认为bool是一种特殊的int:True等价于1;Flase等价于0!有全局转换函数bool()
③float:浮点数,类似于其它语言中的double类型!有全局转换函数float()
④complex:复数(有实部和虚部的数)
字符串类型:
⑤str:字符串,所有的字符串都是不可变的,有全局转换函数 str()
说明:字符串可用于单引号、双引号、三个单引号、三个双引号括起来;可以使用[i]获取指定下标处字符;[i : j]获取指定范围内的子串
序列类型:
⑥list:列表,用[ ], 元素可以改变的有序数组,有全局转换函数 list()
说明:列表的长度len(myList)、获取子列表myList[i:j]、添加新元素myList.push(i)、删除元素myList.pop()或者del myList[i]
⑦tuple:元组,用( ),元素不可改变的有序数组,有全局转换函数 tuple()
说明:元组的长度len(myTuple)、获取子元组myTuple[i:j],元组没有修改元素的方法
⑧range:范围,用range(), 元素是规律的数字数组,有全局转换函数 range(),如0/1/2/3/4/5、10/20/30/40、90/85/80/75/70,Python中没有经典的for循环,只能使用range对象模拟实现,创建方法:range(6)、range(10,50,10)、range(90,65, -5)
集合类型:
⑨set:集合,用{ }, 元素可以改变的无序数组,没有下标,有全局转换函数 set()
说明:集合中元素没有顺序、没有下标,也不允许重复;添加新元素mySet.add(值)、删除元素mySet.remove(值)
映射类型:
⑩dict:词典,用{ },元素可以改变的无序数组,下标是字符串,有全局转换函数 dict(),非常类似于JS中的“对象直接量”语法,但是下标必须用引号括起来!添加、修改、删除元素时,不能使用 . 语法,只能使用 [ ] 语法
6.Python中的运算符
①算术运算符:+-*/(除法)%(求余)//(求商)**(求幂)
说明://表示“求商运算”——不要余数,只要能整除的商部分;Python中没有++和--运算符!——Python中的数字都是“不可变的class类型”,无法在原地自加或自减。
②比较运算符&#xff1a;> >&#61; <<&#61; &#61;&#61; !&#61;
说明&#xff1a;Python中没有全等运算符&#61;&#61;&#61;和!&#61;&#61;&#xff0c;真想判断两个变量是否内存地址一样&#xff0c;使用id()运算符 或者 is/is not 即可
③逻辑运算符&#xff1a;and or not
说明&#xff1a;Python中不能使用&&、||、!
④位运算符&#xff1a;& | ^ ~ <<(按位左移) >>(按位右移)
⑤三目运算符&#xff1a;表达式2 if表达式1 else表达式3
注意&#xff1a;传统三目&#xff1a; 表达式1 ? 表达式2 : 表达式3
⑥赋值运算符&#xff1a;&#61; &#43;&#61; -&#61; *&#61; /&#61; %&#61; //&#61;
⑦特殊运算符&#xff1a;id(变量名)、 is和isnot(判断两个对象是否是同一个)
说明&#xff1a;id()运算符用于返回一个变量的编号(即内存地址)