Day3-Summary

运算符

python中有:数学运算符、比较运算符、逻辑运算符、赋值运算符、位运算符

1.数学运算符:+,-,,/,%,//,*

加,减,乘,除,取余,整除,幂运算(x**y --> 求x的y次方)
取余可用于判断奇偶数/获取个位数上数字

print(5 % 2)
print(1233//10)
print(133**3)
print(2352637**(1/3))
print(729**(1/3))

2.比较运算符:>,<,>=,<=,==,!=

所有的比较运算的结果都是布尔值

age = 18
print(age == 100)
print(18 <= age <= 20)

注意:python中可以使用多个运算符来表示是否在一个范围内

3.逻辑运算符:and,or,not(都是关键字)

逻辑运算符的运算对象都是布尔值,结果也是布尔值

1) and(逻辑与运算) - 两个都为True结果才是True,只要有一个False结果就是False

True and True - True
True and False - False
False and True - False
False and False - False

2) or(逻辑或运算) - 只要有一个True结果就是True,如果全部都是False结果才是False

True or True - True
True or False - True
False or True - True
False or False - False
应用:如果多个条件中只要有一个条件满足就可以,就可以用or将多个条件连接在一起,相当于生活中的或者

3) not(逻辑非运算) - True变成False,False变成True

not True - False
not False - True
应用:对一个条件进行否定

num = int(input())
print('输入的数字能同时被3和7整除:', num % 3 == 0 and num % 7 == 0)
print('输入的数字不能同时被3和7整除:', not (num % 3 == 0 and num % 7 == 0))
print('输入的数字不能被3或7整除:', not (num % 3 == 0 or num % 7 == 0))

4) 短路操作

逻辑与运算的短路操作:如果and前面的结果有一个是False,就不会执行and后面的语句,结果直接False
逻辑或运算的短路操作:只要or前面的结果有一个是True,就不会执行or后面的语句,结果直接True

def func1():
    print('函数执行')
    return True
True and func1()
False and func1()

4.赋值运算符: =,+=,-=,=,/=,%=,//=,*=

赋值符号的左边必须是变量;复合赋值运算的左边的变量必须是已经赋值过的变量

num = 10
num %= 3
print(num)

5.运算顺序

数学运算符>比较运算符>逻辑运算符>赋值运算符
数学运算中: ** > *,/,%,// > +,-

数字类型

1.数字类型

数字类型:整型(int),浮点型(float),布尔(bool),复数(complex)

1)整数(int):包含了所有的整数

python中的整数支持二进制、八进制、十进制和十六进制4种表达方式

十进制:

a.基数:0,1,2,3,4,5,6,7,8,9
b.进位:逢10进1
c.位权:100 = 010^0 + 010^1 + 1*10^2 = 100
d.表示方法:直接写的所有的数字都是十进制的数据
e.转换方式:直接打印

二进制:

a.基数: 0,1
b.进位: 逢2进1 100(4)
c.位权: 100 = 02^0 + 02^1 + 1*2^2 = 4
d.表示方法:在二进制数的前面加前缀0B/0b
e.转换方式:bin()

八进制:

a.基数:0,1,2,3,4,5,6,7
b.进位:逢8进1
c.位权:100 = 08^0 + 08^1 + 1*8^2 = 64
d.表示方法:在八进制数的前面加前缀0O/0o
e.转换方式:oct()

十六进制:

a.基数:0,1,2,3,4,5,6,7,8,9,a/A,b/B,c/C,d/D,e/E,f/F
b.进位:逢16进1
c.位权:100 = 016^0 + 016^1 + 1*16^2 = 256
d.表示方法:在十六进制数的前面加前缀0X/0x
e.转换方式:hex()

print(0x23d)
print(hex(393248))
print(0x60020)

2)浮点型(float):所有的小数对应的类型

支持科学记数法:

num = 3e4   # 3x10^4

3)布尔(bool):只有True和False两个值,True实质为1,False实质为0

4)复数(complex):包括所有由实部和虚部组成的数字,用j来表示虚部

python中支持直接复数运算

print((10+100j) + (10-20j))
print((10+100j) * (10-20j))

2.type函数

type(数据) - 返回指定数据对应的类型

a = 10+2j
print(type(a))

3.类型转换

类型名(数据) - 将指定数据转换成指定类型,返回新的数据

num = 324.324
print(complex(num))
print(complex('23.7'))
print(bool(33+20j))
print(bool(0))
print(bool())
print(bool(False))
int(num)
print(num)

int() - 转换成整型,数字转换成整型只保留整数部分;只有去掉引号后本身就是一个整数的才能转换成整型
float() - 转换成浮点型,数字后加.0;只有去掉引号后本身就是一个数字的才能转换成浮点数
bool() - 所有的数据都可以转换成布尔值;所有为0,为空的值会转换成False,其余为True

if分之结构

1.什么时候使用if

当某段代码是需要在满足某个条件的时候才会执行,这个时候就使用if分支结构

2.怎么使用if

1)语法一

if 条件语句:
代码块

a.说明

if - 关键字,固定写法
条件语句 - 除了赋值语句以外的所有表达式,例:数据、运算表达式、已经赋值过的变量等
: - 固定写法
代码块 - 和if保持一个缩进的一条或多条语句

b.执行过程

先判断条件语句是否为True(如果结果不是布尔就先转换成布尔再判断),如果是True就执行代码块,否则就不执行

2)语法二

if 条件语句:
代码块1
else:
代码块2

a.说明

if - 关键字,固定写法
条件语句 - 除了赋值语句以外的所有表达式,例:数据、运算表达式、已经赋值过的变量等
: - 固定写法
代码块1 - 和if保持一个缩进的一条或多条语句
else - 关键字,固定写法
代码块2 - 和else保持一个缩进的一条或多条语句

b.执行过程

先判断条件语句是否为True(如果结果不是布尔就先转换成布尔再判断),如果是True就执行代码块,否则执行代码块2

你可能感兴趣的:(Day3-Summary)