Python介绍
- Python是一种面向对象的、解释型的计算机编程语言,可应用于Web开发、科学计算、游戏程序设计、图形用户界面等领域;
- Python 是一个高层次的结合了解释性、编译性、互动性和面向对象的脚本语言;
- 是一种解释型语言,这意味着开发过程中没有了编译这个环节。类似于PHP和Perl语言;
- 是交互式语言,这意味着,您可以在一个 Python 提示符 >>> 后直接执行代码;
- 是面向对象语言,这意味着Python支持面向对象的风格或代码封装在对象的编程技术;
- 是初学者的语言,Python 对初级程序员而言,是一种伟大的语言,它支持广泛的应用程序开发,从简单的文字处理到 WWW 浏览器再到游戏;
Python特点
- 简单、易学;
- 开源、拥有众多的开发群体;
- 解释型语言;
- 良好的跨平台性和可移植性;
- 面向对象;
- 可扩展性和丰富的第三方库;
- 数据库,Python提供所有主要的商业数据库的接口;
- GUI编程,Python支持GUI可以创建和移植到许多系统调用;
- 可嵌入,你可以将Python嵌入到C/C++程序,让你的程序的用户获得"脚本化"的能力;
Python环境搭建
- Python3 可应用于多平台包括 Windows、Linux & Unix 和 Mac OS X;
Python下载及安装
- Python 官网:https://www.python.org/
- 到官网下载最新版本安装包,然后按照操作流程安装即可;
- 安装时记得勾选界面的自动添加到环境变量"Add Python 3.6 to PATH"中即可
python -V / python --version 可查看版本号(命令行窗口即可);
Python代码编辑的方式
- 交互式编程
- 在命令提示符中输入"Python"命令来启动Python解释器;
- 可在python文件夹中打开IDIE编辑;
- 可以输入多行,续行;
- 脚本式编程
- 顾名思义,就是在编译器编写程序即可,文件后缀为 :py ;
Python语法
标识符
- 用户定义的、由程序使用的符号就是标识符;
- Python的标识符可以由字母、数字、下划线 “_” 组成,并且不能以数字开头;
- 标识符区分大小写,没有长度限制;
- 标识符不能使用计算机语言中预留的、有特殊作用的关键字;
- 标识符的命名尽量符合见明之义的原则;
关键字
-
Python语言中保留某些单词用作特殊用途; -
关键字也叫保留字; -
用户定义的标识符(如变量名、方法名等)不能与关键字相同,否则编译时会出现错误; -
关键字如:and \ as \ break \ def \ del \ for \ return \ if 等等; -
如果用户需要查看关键字信息,使用 help() 命令进入帮助系统查看; >>> help()
help > keywords
help > break
help > quit
注释
行与缩进
-
python最具特色的就是使用缩进来表示代码块,不需要使用大括号 {} ; -
缩进的空格数是可变的,但是同一个代码块的语句必须包含相同的缩进空格数; -
一般使用四个空格宽度行首缩进; -
不建议使用制表符tab键,因为不同文本编辑器所表示的不一致,如果要跨平台运行,不建议使用; -
python语句结束,末尾不需加分号 ; ; -
注:如果语句缩进数的空格数不一致,会导致运行错误; if True:
print("True")
else:
print("False")
File "test.py", line 6
print ("False")
^
IndentationError: unindent does not match any outer indentation level
多行语句
-
Python通常是一行放一条完整的语句; -
如果需要语句过长,可以使用 " \ " 实现换行书写; -
也可以在语句的外部加上一对 "圆括号()、花括号{}、中括号[] " 来实现,但不需要 ”\“ ;
test = test_one + \
test_two + \
test_three
同一行显示多条语句
print输出
-
print默认是换行输出的; -
要实现不换行的话,在变量末尾加上 end=" ",(双引号中按一个空格键),或者在输出的末尾添加不同的字符; x="a"
y="b"
print(x)
print(y)
print(a,end=" ")
print(b,end=" ")
输入/输出语句
Python数据类型
import 与 from…import
- 在 python 中,用 import 或者 from…import 来导入相应的模块;
- 将整个模块(somemodule)导入,格式为: import somemodule;
- 从某个模块中导入某个函数,格式为: from somemodule import somefunction;
- 从某个模块中导入多个函数,格式为: from somemodule import firstfunc, secondfunc, thirdfunc;
- 将某个模块中的全部函数导入,格式为:from somemodule import;
Python运算符
算术运算符
当变量a=6 , b=2 时:
运算符 | 作用 | 实例 |
---|
+ | 加,两个对象相加; | a+b 输出结果为 8 | - | 减,两个对象相减或是得到负数; | a-b 输出结果为 4 | * | 乘,两个对象相乘或是返回一个被重复若干次的字符串; | a*b 输出结果为 12 | / | 除,两个对象相除; | a/b 输出结果为 3.0 | % | 取模,求除法的余数; | a%b 输出结果为 0 | ** | 幂 - 返回x的y次幂 | a**b 输出结果为 36 | // | 取整除 - 向下取接近商的整数 | a//b 输出结果为 3 |
a = 21
b = 10
c = 0
c = a + b
print ("1 - c 的值为:", c)
比较运算符
当变量a为10,变量b为20:
运算符 | 作用 | 实例 |
---|
== | 等于, 比较对象是否相等; | (a == b) 返回 False; | != | 不等于, 比较两个对象是否不相等; | (a != b) 返回 True; | > | 大于,返回x是否大于y; | (a > b) 返回 False; | < | 小于, 返回x是否小于y; | (a < b) 返回 True; | >= | 大于等于,返回x是否大于等于y; | (a >= b) 返回 False; | <= | 小于等于,返回x是否小于等于y; | (a <= b) 返回 True; |
注:所有比较运算符返回1表示真,返回0表示假;
? 这分别与特殊的变量True和False等价;
? 这些变量名的大写;
a = 21
b = 10
c = 0
if ( a == b ):
print ("1 - a 等于 b")
else:
print ("1 - a 不等于 b")
赋值运算符
当变量a为10,变量b为20:
运算符 | 作用 | 实例 |
---|
= | 简单的赋值运算符 | c = a + b 将 a + b 的运算结果赋值为 c ; | += | 加法赋值运算符 | c += a 等效于 c = c + a ; | -= | 减法赋值运算符 | c -= a 等效于 c = c - a ; | *= | 乘法赋值运算符 | c *= a 等效于 c = c * a ; | /= | 除法赋值运算符 | c /= a 等效于 c = c / a ; | %= | 取模赋值运算符 | c %= a 等效于 c = c % a ; | **= | 幂赋值运算符 | c * *= a 等效于 c = c ** a ; | //= | 取整除赋值运算符 | c //= a 等效于 c = c // a ; | := | 海象运算符,可在表达式内部为变量赋值。 | |
位运算符
- 按位运算符是把数字看作二进制来进行计算的;
- 例如:a=60化为 0011 1100 b=13化为 0000 1101;
运算符 | 作用 |
---|
& | 按位运算符,参与运算的两个值,两个相应位都为1时,则该位的结果为1,否则为0; | | | 按位或运算符,对应的二个二进位有一个为1时,结果位就为1; | ^ | 按位异或运算符,当两对应的二进位相异时,结果为1; | ~ | 按位取反运算符,把数据的每个二进制位取反,即把1变为0,把0变为1; | << | 左移动运算符,运算数的各二进位全部左移若干位,由"<<"右边的数指定移动的位数,高位丢弃,低位补0; | >> | 右移动运算符,把">>“左边的运算数的各二进位全部右移若干位,”>>"右边的数指定移动的位数; |
逻辑运算符
运算符 | 表达式 | 作用 |
---|
and | x and y | 与, x 为 False,x and y 返回 x 的值,否则返回 y 的计算值; | or | x or y | 或,x 为 True,x or y 返回 x 的值,否则返回 y 的计算值; | not | not x | 非,x 为 True,返回False , x 为 False,返回True; |
成员运算符
运算符 | 作用 |
---|
in | 在指定序列中找到值,返回 True,否则返回 False; | not in | 在指定序列中没有找到值,返回 True,否则返回 False; |
身份运算符
运算符 | 作用 |
---|
is | 判断两个标识符是不是引用自一个对象 ; x is y, 类似 id(x) == id(y) , 如果引用的是同一个对象则返回 True,否则返回 False | is not | 判断两个标识符是不是引用自一个对象 ; x is not y , 类似 id(a) != id(b)。如果引用的不是同一个对象则返回结果 True,否则返回 False。 |
Python运算符优先级分级
- 以下表格,从高到低排序;
- and属于拥有更高优先级;
运算符 | 作用 |
---|
** | 指数 (最高优先级) | ~ + - | 按位翻转, 一元加号和减号 | * / % // | 乘,除,求余数和取整除 | + - | 加法减法 | >> << | 右移,左移运算符 | & | 位 ‘AND’ | ^ | | 位运算符 | <= < > >= | 比较运算符 | == != | 等于运算符 | = %= /= //= -= += *= **= | 赋值运算符 | is is not | 身份运算符 | in not in | 成员运算符 | not and or | 逻辑运算符 |
|