1 环境变量
1.1 windows下环境变量
系统变量Path中要加入python安装路径:
C:\xxxx\python36;C:\xxxx\Python36\Scripts;
2 条件判断
2.1 if...elif..else
只有一种条件判断
1 if xxxx:
2 code
3 elif yyyy:
4 code
5 else:
6 code
- 非空即真
包括空字符串、空列表、None等
1 if not username: #username为空,则为True 2
- 非零即真
1 if i: #i为非零,则为True
2.2 比较(关系)运算符
== 等于
!= 不等于
> 大于
< 小于
>= 大于等于
<= 小于等于
2.3 逻辑运算符
and 与(不能写&&)
or 或
not 非
2.4 input()返回类型
input()返回的类型是str,str不能和整数比较,需借助int()将str转换成整数
a = input('请输入一个数字')
b = int(a)
print(b > 100)
3 循环
Python有两种循环,for和while。
- break 退出整个循环
- continue 退出当前循环,直接进入下一次循环
3.1 for循环
必须要有一个可迭代对象。
1 sum = 0
2 for x in range(101):
3 sum = sum + x
4 print(sum)
3.2 while循环
先判断一次,如果满足条件的话再循环。
1 n = 1
2 sum = 0
3 while n < 101:
4 sum += n
5 n += 1
3.3 循环使用else语句
在 python 中,for … else 表示:for 中的语句和普通的没有区别,else 中的语句会在for循环正常执行完(即 for 不是通过 break 跳出而中断的)的情况下执行,while … else 也是一样。
1 for i in range(3):
2 print(i)
3 else:
4 print('else content')
输出
0
1
2
else content
4 基本运算符
除了上面提到的比较运算符和逻辑运算符外,还有以下几种运算符。
4.1 算数运算符
运算符 | 描述 | 示例 |
---|---|---|
+ |
加法运算,将运算符两边的操作数增加。 | a + b = 31 |
- |
减法运算,将运算符左边的操作数减去右边的操作数。 | a – b = -11 |
* |
乘法运算,将运算符两边的操作数相乘 | a * b = 210 |
/ |
除法运算,用右操作数除左操作数 | b / a = 2.1 |
% |
模运算,用右操作数除数左操作数并返回余数 | b % a = 1 |
** |
对运算符进行指数(幂)计算 |
a ** b ,表示10 的21 次幂 |
// |
取整除赋值运算符 - 返回商的整数部分 |
9//2 = 4 , 9.0//2.0 = 4.0 , -11//3 = -4 , -11.0//3 = -4.0
|
4.2 赋值运算符
运算符 | 描述 | 示例 |
---|---|---|
= |
将右侧操作数的值分配给左侧操作数 |
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
|
4.3 按位运算符
按位运算符执行逐位运算。 假设变量a = 60
; 和变量b = 13
; 现在以二进制格式,它们将如下
a = 0011 1100
b = 0000 1101
运算符 | 描述 | 示例 |
---|---|---|
& |
按位与:参与运算的两个值,如果两个相应位都为1,则该位的结果为1,否则为0 |
(a & b) 结果表示为 0000 1100
|
| | 按位或:只要对应的二个二进位有一个为1时,结果位就为1 | (a|b) = 61 结果表示为 0011 1101
|
^ |
二进制异或。当两对应的二进位相异时,结果为1 |
(a ^ b) = 49 (结果表示为 0011 0001 ) |
~ |
二进制补码,对数据的每个二进制位取反,即把1变为0,把0变为1 。~x 类似于 -x-1 |
(~a ) = -61 有符号的二进制数,表示为1100 0011 的补码形式。 |
<< |
二进制左移,运算数的各二进位全部左移若干位,由 << 右边的数字指定了移动的位数,高位丢弃,低位补0 |
a << 2 = 240 (结果表示为 1111 0000 ) |
>> |
二进制右移,把">>"左边的运算数的各二进位全部右移若干位,>> 右边的数字指定了移动的位数 |
a >> 2 = 15 (结果表示为0000 1111 ) |
4.4 成员运算符
成员运算符测试给定值是否为序列中的成员,例如字符串、列表或元组。
运算符 | 描述 | 示例 |
---|---|---|
in |
如果在指定的序列中找到一个变量的值,则返回true ,否则返回false 。 |
- |
not in |
如果在指定序列中找不到变量的值,则返回true ,否则返回false 。 |
- |
4.5 身份运算符
身份运算符比较两个对象的内存位置。
运算符 | 描述 | 示例 |
---|---|---|
is |
如果运算符任一侧的变量指向相同的对象,则返回True ,否则返回False 。 |
|
is not |
如果两个标识符引用自不同对象,则返回True ,否则返回False 。 |
- |
4.6 运算符优先级
由高到低如下
序号 | 运算符 | 描述 |
---|---|---|
1 | ** |
指数(次幂)运算 |
2 |
~ + -
|
补码,一元加减(最后两个的方法名称是+@ 和-@ ) |
3 |
* / % //
|
乘法,除法,取模和取整数 |
4 |
+ -
|
|
5 |
>> <<
|
向右和向左位移 |
6 | & |
按位与 |
7 | ^ | |
位运算符 |
8 |
<= < > >=
|
比较运算符 |
9 | == !=
|
等于运算符 |
10 |
= %= /= //= -= += *= **=
|
赋值运算符 |
11 |
is is not
|
身份运算符 |
12 |
in not in
|
成员运算符 |
13 |
not or and
|
逻辑运算符 |
0