python中常用的运算符 (二)

#一、python中常用的运算符

##一、运算符的类型
算术运算符、比较运算符、逻辑运算符、赋值运算符、成员运算符等等。

###1.算术运算符
+(加)、-(减)、*(乘)、/(除)、//(整除)、**(幂运算)、%(取余)

a = 10
b = 2
print(a + b)
print(a - b)
print(a * b)
# python中的除法运算得到的结果永远是浮点数
print(a /b)

###2. 整除
将除法运算的结果去掉小数部分(向小取整:获取小于等于N的最大整数)

print(10//2)
print(10//3)
print(10//4)

###3. 取余(%)

print(10%3)

###4. 幂运算
幂运算开N次方结果永远是浮点型
sqrt():开方,sqrt必须从math数学模块中导入,只要程序导入模块,必然会对性能产生影响

print(10**2)
print(100**0.5)

##二、 比较运算符

(大于)、<(小于)、>=(大于等于)、<=(小于等于)、==(等等于)、!=(不等于)
比较运算符结果为布尔值True、False
10 ==10.0,数值相等数据类型不相等(只指代整形和浮点型),结果为True

a = 10
b = 2
print(a > b)
print(a >=b)
print(a !=b)
print(10==10.0)
print(10=='10')

##三、逻辑运算符
and(逻辑与运算)、or(逻辑或运算)、not(逻辑非运算)
###1. and用法
条件1 and 条件2,判断两个条件是否都成立,两者都成立,结果为True,反之为False
中断操作;如果条件1为False,不需要再判断条件2,整体为False.

print(3 >2 and 2 !=1)
print((3 >2 and 2 != 1) and 2 == 2 and 1 == 0)
print(True and False)
print(True and False,False and True,False and True)

###2. or用法
条件1 or 条件2,判断两个条件中是否存在成立条件,两个条件都不成立结果为False,反之为True
中断操作;如果条件1为True,不需要再判断条件2,整体为True.
单独的数字也能作为条件,0代表False,非0代表True

print(3 > 2 or 2 != 2)
print(3 < 2 or 0)

###3. not
取反

print(not True)

练习

判断一个年份是否是闰年。
条件:年份能够被4整除但是不能被100整除,或者年份能被400整除。地球公转365天5小时40分钟,每过四年约等于多1天,每过400年多加3天,从第100、200、300年各减掉一天。

year = 400
year = 2000
year = 2001
print((year % 4 == 0 and year % 100 != 0) or year % 400 == 0)

##四、 赋值运算符
+=、-=、*=、/=、//=、**=、%=。
作用:给一个已经存在的变量赋值

x = 100
x += 2  #等价于 x = x + 2
print(x)
x *= 2
x //= 4
print(x)

##五、复合赋值运算符

x += x * 3# x = x+(x*3)
print(x)

运算符优先级
A.算术运算符 > 比较运算符 > 逻辑运算符 > 赋值运算符
B.有小括号先算小括号
C.** > *、/、//、% > +、-

练习

给定一个半径r,计算圆的面积和周长。

import math

r = 3
area = round(math.pi * r ** 2,2)
peimeter = round( 2 * math.pi * r ,2)
print(area,peimeter)

#二、各类数值的转换
数值、布尔值、空值转换
注意:所有的数据类型后面添加小括号()能够变成对应的的数据类型转换方法–构造器语法

1.整型(int)

什么样的数据能够转成整型?
1.浮点型能够转整型。

print(int(1.9),int(2.0))

2.去掉引号就是一个整数的字符串能够转为整型。

print(int('123'), type(int('123')))
print(int('12.3'))# ValueError: invalid literal for int() with base 10: '12.3'

3.布尔值可以转整型
True -> 1;False -> 0

print(int(True), int(False))

 r = int(input('请输入半径:'))
 area = 3.14 * r ** 2
 print(area)

##2.浮点型(float):
什么样的数据能够转成浮点型?
1.整型能够转为浮点型

print(float(10))

2.去掉引号就是一个数字的字符串能够转为浮点型

print(float('1.0'), float('2'), float('.9'), float('4.'))

3.布尔值可以转浮点型。True -> 1.0,False -> 0.0

print(float(True), float(False))

##3.布尔(bool)
什么样的数据能够转为布尔值?
所有的数据都可以转为布尔值。
0,0.0,None,‘’,“”,[],(),{}(字典),set()(集合)转为False其余数据都转为True.
并不是所有的数据类型都可以相互转换

#三、 分支结构

能够使用序在某个节点做选择。 使用到的python系统关键字:if 、else、elif

userName = input('请输入账号:')
password = input('请输入密码:')

if userName == 'admin' and password == '123456':
    print('登陆成功')
else:
    print('账号或密码错误')

1.单分支结构

‘’’
语法:
if 条件:
代码块
else:
代码块
‘’’
##练习
判断一个年份是否是闰年,是返回闰年,否返回平年

year = int(input('请输入年份:'))
if (year % 4 == 0 and year % 100 != 0) or (year % 400 == 0):
    print('闰年')
else:
    print('平年')

##2. 多分支结构

year = 2000
if year % 4 == 0 and year % 100 != 0:
    print('闰年')
elif year % 400 == 0:
    print('闰年')
else:
    print('平年')

‘’’
语法:
if 条件:
代码块
elif:
代码块
elif:
代码块
else:
代码块
‘’’
分支结构中else语句合适的情况下可以不写

##练习:
有一个成绩,如果成绩大于等于90,为等级A:大于等于80,为等级B,大于等于700,为等级C,大于等于60为等级D,反之为等级E。

grade = float(input('请输入成绩:'))
if grade >= 90:
    print('A')
elif grade >= 80:
    print('B')
elif grade >= 70:
    print('C')
elif grade >= 60:
    print('D')
else:
    print('E')

##3. 嵌套分支
单分支和多分支结构可以相互嵌套。

练习

一个整数,判断其是不是2的倍数,如果是2的倍数,在判断其是不是3的倍数。

number = 10
if number % 2 == 0:
    print('是2的倍数')
    if number % 3 == 0:
        print('是3的倍数')
else:
    print('不是2的倍数')

4.三目运算符

作用:对单分支结构做简化(简化),性能不会改变

age = 18
if age >= 18:
    print('成年')
else:
    print('未成年')

三目运算符写法:

result = '成年' if age >= 18 else '未成年'
print(result)

“”"
语法:
结果1 if 条件 else 结果2
如果条件成立结果2为1,否则为结果2.
注意:并不是所有的单分支结构可以转三目运算符。
“”"

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值