目录
1.运算符
单精度(32) float 双精度(64) double 计算机的底层都i是二进制(小数不能) decimal 字符串的小数 数据库中如果针对钱 用decimal Decimal(10,2):表示有10位数,保留两位小数
1.1 算数运算符
/:求除数 //:求整 %:取模 **:幂
--Python中float进行算术运算时,精度丢失问题
使用Python中的Decimal模块解决:
①导入Decimal模块
from decimal import Decimal
②使用
变量 = Decimal("float值")
注意:float类型的值:必须用双引号包裹,因为这样会以str保存输出,精度不会丢失--算术运算符的优先级:()高于**高于 * / // %高于 + -
1.2 赋值运算符
①多个变量赋值
格式: 变量1,变量2,变量3 = 值1,值2,值3
name,age,salary = "张三",22,2222.22
②多个变量赋相同值
格式:变量1=变量2=变量3=值
a=b=c = 22
③Python中的变量互换(a=1 b=2)
格式:a,b = b,a
结果:a=2 b=11.3 比较运算符
> < >= <= !=(不等于) <>(不等于)
1.4 逻辑运算符
①and运算符
只要有一个值为0,则结果为0,否则结果为最后一个非0的数字
②or运算符
只有所有的值为0结果才为0,否则结果为第一个非0数字--java中的逻辑运算符
&&短路与 ||短路或
&逻辑与 |逻辑或--python中的逻辑运算符
and(&&) or(||)
False是0 非0都是True1.5 位运算符
<< 二进制位数往左边移动,往后面加0 (例如:12<<2,实际的二进制值12为“ 00 1100”,左移(左移2位)后,返回值48,其二进制值为“ 11 0000”)
>> 二进制位数往右边移动,移除后面的个数 (例如:48>>2,实际的二进制值48为“ 11 0000”,右移(右移2位)后,返回值12,其二进制值为“ 00 1100”)
& 按位与:位数都为1,则为1,否则为0
| 按位或:位数有1,则为1,否则为0
^ 按位异或:位数相同为0,不同为11.6 条件运算符
如果符合 if 后的 a>b 条件,取前(a大),否则取后(打印b大)
"a大" if a > b else print("b大")
2.条件结构
①if语句:
# 语法格式: if 条件: 代码块
注意:缩进关系【4个空格或一个Tab制表符】
②if-else语句:# 语法格式: if 条件: 代码块 else: 代码块
③if-elif-else语句:
# 语法格式: if 条件1: 代码块 elif 条件2: 代码块 else: 代码块
④if嵌套:
# 语法格式: if 条件: 代码块 if 条件: 代码块 else: 代码块
举例:猜拳
ls = ["1.✂", "2.石头", "3.🙅"] # 用户输入 u = int(input("请输入[1.✂ 2.石头 3.🙅]")) # 电脑随机输入 c = random.randint(1, 3) win = 1 if c + 1 == 4 else c + 1 print(f"电脑出了{ls[c - 1]},玩家出了{ls[u - 1]}") if u == win: print("你赢了") elif u == c: print("平局") else: print("你输了")
3.随机数
①导入random模块
import random
②使用random模块中随机数功能
random.randint(开始,结束)
注意:包含开始位置和结束位置
4.循环结构
①while循环
# 语法格式: while 条件: 代码块 # 使用while输出1~100的数字 a = 1 while a<=100: print(a) a+=1
②循环终止
--break:终止循环
--continue:退出当前一次循环,继续执行下次循环
③for循环# 语法格式 for 临时变量 in 列表: 代码块 # 打印0-99 for i in range(100): print(i)
④循环结合else使用
当循环正常结束后要执行的代码(即:上述循环没有break时触发)
--while...else :# 语法格式 while 条件: 代码块 else: 代码块
--for...else :
# 语法格式 for 临时变量 in 列表: 代码块 else: 代码块
今天的学习记录就到这了,拜拜!
说明:学习记录,若有错误,欢迎指正,若有疑问,欢迎评论