python

关注公众号 jb51net

关闭
首页 > 脚本专栏 > python > python结构

python运算符+条件结构+循环结构

作者:小宝的宝呢

这篇文章主要介绍了python运算符、条件结构、循环结构;算术运算符、赋值运算符、逻辑运算符等一些相关内容,需要的小伙伴可以参考一下,希望对你的学习有所帮助

一,算术运算符

 + - * /

print(1+2)        相加
print("1"+"2")        拼接
print("1"+2)        报错,数据类型不同
# /求除数  //求整数    %取模   **幂
print(3/2)        输出1.5
print(3//2)        输出1
print(3%2)        输出1
print(3**2)        输出9

Python中float进行算术运算时,精度丢失问题:

使用Python中的Decimal模块解决

 ①.导入Decimal模块

        from decimal import Decimal

②.使用

        变量 = Decimal("float值")

请注意:float类型的值:必须用双引号包裹

注意:算术运算符的优先级
    ()高于**高于 * / // %高于 + -

数据库中针对钱,使用Decimal,导入方式如下:

# 单精度(32位)floot
# 双精度(64位)double
# 计算机的底层都是二进制(小数不能完美转成二进制)
# 数据库中如果针对钱  Decimal(10,2)  decimal是字符串小数
print(0.2-0.1)
print(0.6-0.4)

print(Decimal(0.6) - Decimal(0.4))
print(Decimal("0.6") - Decimal("0.4"))

控制台输出:

0.1
0.19999999999999996
0.1999999999999999555910790150

二,赋值运算符

多个变量赋值,格式: 变量1,变量2,变量3 = 值1,值2,值3

a,b,c=1,2,3

多个变量赋相同值,格式:变量1=变量2=变量3=值

a=b=c=1

三,比较运算符

>        <        >=        <=        !=        <>

有a+=1,a/=2,a*=2,a-=2,但是没有a++

注意:比较运算符的特殊情况

四,逻辑运算符

java中的逻辑运算符 : &&并且        //或者

python中的逻辑运算符: and并且        or或者
    ①and运算符
        只要有一个值为0,则结果为0,否则结果为最后一个非0的数字
    ②or运算符
        只有所有的值为0结果才为0,否则结果为第一个非0数字

print(True and False)
# 先并且,再或者
print(True and False or True)
# 在python中 0为false,其他数字为true
print(1 and 2)
print(1 and 2 and 0 and 1)
print(1 or 2 or 0 or 1)

控制台输出:

False
True
2
0
1

五,位运算符

<< 二进制位数往左边移动

# 6  110
# print(6<<2)即11000即24
print(6<<2)

>> 二进制位数往右边移动

# print(6>>2)即1即1
print(6>>2)

& 按位与:位数都为1,则为1,否则为0

# 6  110
# 3  011
# 010控制台输出2
print(3&6)

 | 按位或:位数有1,则为1,否则为0

# 6  110
# 3  011
# 111控制台输出7
print(3|6)

^ 按位异或:位数相同为0,不同为1

# 6  110
# 3  011
# 101控制台输出5
print(3^6)
# 2,4,8,16,32....
# 10,100,10000,10000,100000...
# 1,11,111,1111,11111....
print(4&(4-1))        输出0
print(8&(8-1))        输出0
print(9&(9-1))        输出8

二进制:0,1

八进制:0-7

十进制:0-9

十六进制:0-9  a-f

六,条件运算符

# 条件后移
a=1
b=2
print(a if a>b  else b)       

 输出2

七,随机数

石头剪刀布游戏:

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==2:
    print("平局")
else:
    print("你输了")

控制台:

请输入[1,✂ 2,🌰 3,🙅‍]1                ---------手动输入
电脑出了 3,🙅‍,玩家出了1,✂ 
你赢了

进程已结束,退出代码为 0

八,条件结构 

1,if语句

语法格式,if  条件:
                            代码块

注意:缩进关系【4个空格或一个Tab制表符】

2,if-else语句

语法格式,if 条件:
                             代码块
                  else:
                            代码块

3,if-elif-else语句

语法格式,if 条件1:
                               代码块
                 elif 条件2:
                              代码块
                 else:
                             代码块

4,if嵌套

语法格式,if 条件:
                             代码块
                  if 条件:
                             代码块
                  else:
                            代码块

九,循环结构

1,while循环

语法,while  条件:
                         代码块

# 使用while输出1~100的数字
a=1
while a<=100:
    print(a)
    a+=1

2,循环终止

break : 终止循环

continue :退出当前一次循环,继续执行下次循环

# if,while,for都有else
for i in ls:
    print(i)
    if i>5:
        break
else:#只要上面的代码没有break就执行
    print("yes")

3,for循环

语法,for 临时变量 in 列表:
                                              代码块

ls=[1,2,3,4,5,6,7,8]
sum=0
for i in ls:
    print(i)
    sum+=i
print(sum/len(ls))
print(sum/len(ls))
# range(3) [0,1,2]
for i in range(3):
    print(i)

# 200~300
for i in range(101):
    print(i+200)

4,循环结合else使用

①while...else

语法,while  条件:
                              代码块
           else:
                              代码块

②for...else

语法,for 临时变量 in 列表:
                                              代码块
           else:
                   代码块

# if,while,for都有else
for i in ls:
    print(i)
    if i>5:
        break
else:#只要上面的代码没有break就执行
    print("yes")

到此这篇关于python运算符+条件结构+循环结构的文章就介绍到这了,更多相关python结构内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

您可能感兴趣的文章:
阅读全文