-
-
print输出 打印到屏幕上一些信息
-
可以接受多个字符串,用逗号分隔,遇到逗号会输出一个空格
-
-
input输入
-
作用:从外部获取变量的值
-
用法
-
age = input("请输入您的年龄"); // 等待输入(阻塞),输入的内容保存在age里
-
print("age = ",age);
-
age 为字符串类型
-
-
-
数据类型
-
计算机顾名思义就是可以做数学运算的机器,因此,计算机程序理所当然地可以处理各种数值,但是计算机能处理地远远不止数值,还可以处理文本、图形、音频、视频、网页等各种数据,不同地数据,需要定义不同地数据类型
-
数据类型分类
-
Number(数字)
-
整数
-
浮点数(小数)
-
复数
-
-
字符串(String)
-
布尔值(Boolean)
-
真(true)
-
假(false)
-
-
None(空值)
-
list(列表)
-
tuple(元组)
-
dict(字典)
-
set(集合)
-
-
标识符
-
是一串字符串(注意:字符串未必是标识符)
-
规则
-
只能由字母、数字、下划线组成
-
开头不能是数字
-
不能是Python的关键字
-
查找关键字
-
import keyword
-
print(keyword.kwlist)
-
-
-
区分大小写
-
见名知意
-
遵循驼峰原则
-
首单词是正常的,从第二个单词开始首字母大写
-
比如:sunckGoodMan
-
-
-
作用
-
给变量、函数等命名的
-
-
注意
-
在Python3中,非ASCII标识符也是允许的
-
-
-
变量和常量
-
变量
-
概述
-
程序可操作的存储空间的名称
-
程序允许期间能改变的数据
-
每个变量都有特定的类型
-
-
作用
-
将不同类型的数据存储到内存
-
-
定义变量
-
变量名 = 初始值
-
初始值:为了确定变量的类型
-
比如 age = 10 age = asdhaksa 系统自动判断初始值是什么类型
-
-
-
数据的存储
-
变量名 = 数据值
-
注意: 变量在使用之前必须定义,否则会报错
-
-
删除变量
-
del 变量名
-
删除后变量无法引用
-
-
程序执行的过程,自上而下,逐步求精 顺序执行(面向过程)
-
type(数据值),
-
可以判断变量属于数据类型
-
-
id(数据值)
-
查看变量的地址
-
-
-
常量
-
程序运行期间不能改变的数据
-
-
-
Number(数字)
-
分类
-
整数
-
Python可以处理任意大小的整数,当然包括负整数,在程序中的表示和数学的写法一样
-
交互性定义变量
-
num6,num7 = 6,7
-
-
连续定义多个变量
-
num3 = num4 = num5 = 1
-
它们的地址是一样的
-
-
-
浮点数
-
浮点型由整数部分与小数部分组成,浮点数运算 可能会有四舍五入的误差
-
f1 = 1.1
-
-
-
f2 = 2.2
-
f1 + f2 = 3.30000000000003
-
-
复数
-
实数部分和虚数部分构成,可以用a+bj 表示
-
-
数字类型转换
-
int(数据) 将数据转换成整数类型
-
float(数据) 将数据转换成小数
-
str(数据) 将数据转换成字符串
-
-
如果有其它无用字符会报错
-
数学函数
-
abs(a1) 求a1的绝对值 返回数字的绝对值
-
比较两个数的大小,为真就返回1,为假就返回0
-
max(a1,a2,,,,,,an) 返回给定参数的最大值
-
min(a1,a2,,,,,,,an) 返回给定参数的最小值
-
求x的y次方
-
pow(x,y) 计算x的y次方
-
-
round(x,n) 返回浮点数的x的四舍五入的值,如果给出n值,则代表舍入到小数点后n位 (n可有可无)
-
import math
-
导入库 库:封装一些功能
-
导入数学相关的库
-
math.cell(18.1) 向上取整 结果为18
-
math.floor(18.9)向下取整 结果为19
-
math.modf(22.3) 返回整数部分与小数部分
-
结果为(0.300000000007,22.0) 返回的都是浮点数
-
-
math.sqrt(16) 开方 结果为4
-
-
import random
-
封装了一些有关随机数的方法
-
random.choice([1,3,5,7,9])
-
从序列的元素中 随机挑选一个元素(不局限于数字,也可以是字符串)
-
返回值 可能为1、3、5、7、9其中一个
-
-
random.choice(range(5))
-
range(5) ==[0,1,2,3,4]
-
从range(5)随机选取一个数
-
-
random.choice("sunck")
-
会将"sunck" 当成一个序列来看
-
"sunck" ==["s","u","n","c","k"]
-
-
产生一个1~100之间的随机数
-
r1 = random.choice(range(100))+1
-
-
random.randrange(start,stop,step)
-
从指定范围内,按指定的基数递增的集合中选取一个随机数
-
start--指定范围的开始值,包含在范围内 不写就默认是0
-
stop--指定范围的结束值,不包含在范围内
-
step-- 指定的递增基数 不写就默认为1
-
举例
-
r1 = random.randrange(1,100,2)
-
r1就等于从 1~100抽取步长为2的基数
-
-
r1 = random.randrange(100)
-
从0~99选取一个随机数
-
-
-
-
random.random()
-
随机产生[0,1) 之间的数(浮点数)
-
-
random.shuffle(list)
-
将序列的所有元素随机排序 (list为序列)
-
-
random.uniform(a,b)
-
随机生成一个实数(可能为整数,也可能为整数)
-
它在[a,b]范围内
-
-
-
-
-
运算符和表达式
-
表达式
-
由变量、常量和运算符组成的式子
-
-
阅读表达式
-
算术运算符和算术运算表达式
-
算术运算符
-
+(加) -(减) *(乘) /(除) %(取模) **(求幂) //(取整)
-
-
算术运算表达式
-
1+1 2*3 a/3 都为算术运算表达式
-
功能: 进行相关符号的数学运算,不会改变变量的值
-
值:相关的数学运算结果
-
-
-
赋值运算符和赋值运算表达式
-
赋值运算符 =
-
赋值运算表达式
-
格式: 变量 = 表达式
-
功能:计算等号右侧"表达式"的值,并赋值给等号左侧的变量
-
值: 赋值结果后变量的
-
-
-
复合运算符
-
+= a+=b 相当于 a = a+b
-
-= a-=b 相当于 a = a-b
-
*= a *=b 相当于 a = a *b
-
/= a/=b 相当于 a = a/b
-
%= a%=b 相当于 a = a%b
-
**= a * *=b 相当于 a = a * *b
-
//= a//=b 相当于 a = a//b
-
-
if语句
-
格式
-
if 表达式:
-
语句
-
-
逻辑
-
当程序执行到if语句时,首先计算"表达式"的值
-
如果“表达式”的值为真,那么就执行if下的"语句"
-
如果"表达式"的值为假,则跳过整个if语句,继续向下执行。
-
-
何为真假?
-
假: 0 0.0 “ None False 全为假
-
真: 除了假就是真
-
-
-
if-else语句
-
格式
-
if 表达式:
-
语句1
-
else:
-
语句2
-
-
逻辑:
-
当程序执行到if-else语句时,首先计算"表达式"的值
-
如果"表达式”的值为真,则执行"语句1"。执行完"语句1"跳出整个if-else语句
-
如果"表达式"的值为假,则执行"语句2". 执行完"语句2"跳出整个if-else语句
-
-
-
位运算符
-
按位运算符是把数字看做二进制数来进行计算
-
& 按位与运算符
-
相应的位数都为1,则该位的结果是1,否则为0
-
-
| 按位或运算符
-
两个二进制位有一个为1时,结果为1
-
-
^ 按位异或运算符
-
二进制的两位相异时,结果为1
-
-
~ 按位取反运算符
-
每个二进制数据位取反 1变0 0变1
-
-
<< 左移动运算符
-
各二进制位全部左移动若干位,由<<右侧的数字决定,高位丢弃,低位补0
-
-
》右移动运算符
-
各二进制位全部右移动若干位,由>>右侧的数字决定
-
-
-
关系运算符和关系运算表达式
-
==(等于) !=(不等于) >(大于) <(小于) >=(大于等于) <=(小于等于)
-
关系运算表达式
-
格式:
-
表达式1 关系运算符 表达式2
-
-
举例 1+2 >3+4
-
功能: 计算"表达式1"和 "表达式2"的值
-
值: 如果关系成立,整个关系运算表达式的值为真,否则为假
-
-
-
逻辑运算符
-
逻辑与 and
-
逻辑与运算表达式: 表达式1 and 表达式2
-
值: 如果表达式1的值为真,表达式2的值为真,整体逻辑与运算表达式的值为真
-
如果表达式1的值为真,表达式2的值为假,整体逻辑与运算表达式的值为假
-
如果表达式1的值为假,表达式2的值为真,整体逻辑与运算表达式的值为假
-
如果表达式1的值为假,表达式2的值为假,整体逻辑与运算表达式的值为假
-
有一个为假就为假。
-
-
逻辑或 or
-
逻辑或运算表达式 : 表达式1 or 表达式2
-
值:
-
如果表达式1的值为真,表达式2的值为真,整体逻辑或运算表达式的值为真
-
如果表达式1的值为假,表达式2的值为真,整体逻辑或运算表达式的值为真
-
如果表达式1的值为真,表达式2的值为假,整体逻辑或运算表达式的值为真
-
如果表达式1的值为假,表达式2的值为假,整体逻辑或运算表达式的值为假
-
有一个为真就为真
-
-
-
逻辑非 not
-
逻辑非运算表达式 : not 表达式
-
值:如果表达式的值为真,整体逻辑非运算表达式的值为假
-
如果表达式的值为假,整体逻辑非运算表达式的值为真
-
颠倒黑白
-
-
短路原则
-
表达式1 and 表达式2 and 表达式3 and .......and 表达式n
-
如果表达式1为架假,后面的表达式就不用计算了
-
-
-
成员运算符
-
in
-
如果在指定的序列中找到值返回Ture,否则返回False
-
-
not in
-
如果在指定的序列中没有找到值返回Ture,否则返回False
-
-
-
身份运算符
-
is
-
判断两个标识符是不是引用同一个对象
-
-
is not
-
判断两个标识符是不是引用不同的对象
-
-
-
运算符优先级
-
**
-
~ + - 正负号(一元加减)
-
/ * % //
-
-+
-
1 >> <<
-
&
-
^ |
-
<= < > >=
-
== !=
-
= %= += -+ //=
-
is is not
-
in not in
-
-
-
-