#一、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.
注意:并不是所有的单分支结构可以转三目运算符。
“”"
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。