list

运算符

控制语句

range方法

包 import

random

while for

运算符

算术运算符

关系运算符

逻辑运算符

赋值运算符

成员运算符

身份运算符

位运算符

算术运算符

+ : a + b
	-: a-b
	*: a * b
	//: a // b a整除b 
	# 整除
		print(a//b)
	# 取余
		print(a%b)
	# 除
		print(a/b)
	#幂运算:**
		print(2**4) 打印2的四次幂
注意:python2中 a/b 是整除

关系运算符

> < >= <= != ==(比较的值)
在python2里有<>表示不等于 在python3不生效了

逻辑运算符

and 与 :只有都是真 结果才为真 只要有假 结果就为假

or 或运算:只有真 则结果就为真

not 取反:真变假 假变真

not > and > or

三目运算:

形式一:条件判断 and 表达式1 or 表达式2


形式二:表达式1 if 判断条件 else 表达式2

取值原理:

当条件判断为真的时候取表达式1

为假取表达式2

取值逻辑:

与(and):

如果and 左侧条件不成立,停止向后去取值 直到遇到 or

2==3 and 4 or 5 取到的结果是5

或(or)

如果or左侧成立 那直接取值True

2==2 or 2 and 8  取到的结果是True

赋值运算符

=

eg: a = 3 解释:将数值3 赋值给了a

+=

eg: a+=b 相当于 a = a + b 解释:+=符号左侧的变量将参与运算 然后运算结果再赋值给自己,以下运算符同理

-=

%=

/=

*=

//=


成员运算符

字典 列表 集合 元组 字符串

如果是字典 判断的是 在不在字典的keys里 二不去判断在不在values里

eg:a = [1,2,3,4,5] 想知道1在不在数组里 6在不在数组里

in

my_list = [1,45,6]
    print(1 in my_list) 结果是True
    print(2 in my_list)		  False

not in 不在

print(2 not in my_list) 结果是True

伪代码:不是真正的代码 而是对代码逻辑的一个说明 整理

数组是[1,2,3,4,5]

看1 是不是 in 这个数组


1 in [1,2,3,4,5]

身份运算符

比较值 还要比较内存地址 当两者都相同才返回真

id()内置函数 括号内是一个变量 得到的结果是地址

is

not is

位运算符【了解】权限的时候 会用到

针对于二进制(以8位为例) 补码

6 & 7 都是真 则真 有假则假

110

111


110

6|7 结果是7: 有真则真

110

111


111—》7

6^7 得到的结果是1:不同为真 相同为假

110

111


001 —》1

~6

0000 0110 —》1111 1001—》1111 1000-》1000 0111–》-7

位移:

>>表示右移 
	6>>1 6是十进制数 1表示位数 对应的二进制数向右移动 最低位舍弃 最高位补0

	6-->110 >> 00011
<< 表示左移
	6<<1 6是十进制数 1表示位数 对应的二进制数向右移动 最低位补0
	6-->110 << 1100 ----》12

控制语句

程序默认从上到下执行:顺序执行

判断分支:if else elif

if 后只能跟一个或0个else

对条件的判断》成功和失败

例子:找工作:

if 工资大于15k:

考虑一下

考虑好多事情

else:

按着最近的那个if条件不成立的时候 执行下面的拜拜

拜拜-》出门左转

if 工资大于15k:

			考虑一下

		elif 能学到东西:

			#上边的条件不成立的时候,接下来继续判断,如果本次判断成立,执行下面的代码

			也去

		else:

			再找

在if 写的是我们判断条件,if 之后可以加N多个elif elif 也要加判断条件

elif 是跟在if后面的 然后可以出现多个,后面跟判断条件

if语句的嵌套使用

找对象

if sex == “女”:

if age>17 and age<25:

print(“靠近她”)

if money > 10:

print(“展开攻势”)

else:

print(“我养你呀”)

else:

print(“不搞基”)

pass 占位 他没有含义和功能

关于缩进:

通过缩进来区分代码块

缩进的方式:1 用四个空格

2 用两个空格

3 一个tab键

注意:一旦确定缩进方式 就不能变

range 范围的意思

在python 帮我们生成一个序列 也是python的内置函数

1 range(数字)

通过list() 强制转换 我们会看到一个从0开始到你括号里写的数字-1

2 range(开始值, 结束值)

会得到一个[开始值,,,结束值-1) 序列

res1 = range(2, 10)
print(list(res1))

3 range(开始值, 结束值, 步数)

res2 = range(0, 20, 3)  0是起始值 20结束值(不会被取到) 2是间隔步数
print(list(res2))

4 降序

# 降序
res3 = range(10, 0, -2)
print(list(res3))

python有丰富的库,帮我们完成 我们自己写的不能快速完成的事情,提高代码的复用性

keyword 包

包:是一个文件或者目录

分类:

系统的 keyword

自己定义的

别人的:第三方包

使用:

第一步:导包 import 文件名/目录名

第二步:通过点 来调用包里面的常量, 函数,类

拓展说明

或者导入使用:from 包名 import 函数名 类名 常量

from 包名 import * : 将包名里面对应所有内容导入过来

产生的一个问题:当我们from 包名 import * 导入多个包的时候 会产生重名的问题

因此:我们就用什么 导入什么


from 包名 import 函数名 类名 常量 与 import的区别

购物车 里面有吃的

from 车 import 乐视薯片

import 车

使用的时候 车.可乐

导包规范

from … import xxx 在文件最开始 而且 引用系统的在前,自定义在后

import xxx 在from xx import xx 之后引用系统的在前,自定义在后

一般来说 导包都是在文件的开头来完成【约定

自定义的包不要和系统的冲突

random

随机

random是一个系统自带的包 帮我们生成随机数或字符

先导入

choice方法

功能:在一个非空序列 给我们随机出来一个元素

res = random.choice("jskdfs")
print(res)
res1 = random.choice([1,2,3,4,5,6,7,78,8,44,3])
print(res1)

randint

randint 帮我们随机出来一个整数 他能渠取到我们等号两侧的值


#randint 帮我们随机出来一个整数 他能渠取到我们等号两侧的值
res2 = random.randint(1, 2)
print(res2)

randrange

res3 = random.randrange(1)

res4 = random.randrange(8, 10) 8是随机的起始值 10是结束值 
print(res4)

res5 = random.randrange(1, 15, 3) 1是随机的起始值 15是结束值 3是我们的步骤
print(res5)

random 帮我们随机出一个0到1之间的小数

res8 = random.random()
print(res8)

循环语句

重复的做一个操作

道歉:

print(“我错了”)

print(“我错了”)

print(“我错了”)

print(“我错了”)

女票说:你给我用python输出一万句 “我错了” 我就原谅你

while循环需要的东西:

1 起始值 i = 0

2 判断当前的这个i 是不是满足我们循环的条件

是:

继续执行我们的代码

改变i的数值

不是:

循环结束

while循环

起始变量

while 判断条件:

你的操作逻辑

判断条件所用变量 要修该其值(目的是未了能循环结束)

打印十以内的偶数
i = 0
while i <= 10:
    # (i+1)%2==0
    if (i % 2) == 0:
        print(i, "是偶数")
    else:
        print(i, "不是偶数")
    i += 1

while循环嵌套

注意

1 要有循环结束标记的变化 ,如果不变 就产生了死循环