【02第二章】 数据类型和基本运算符
2.1 Python中的保留字
【代码01】查看保留字
import keyword
print(keyword.kwlist)
2.2 Python中的标识符
2.3 理解Python中的变量
2.4 变量的定义和使用
【代码01】变量的定义和使用
#创建一个整型变量Luck_number,并为其赋值为8
luck_number=8
my_name=杨淑娟#字符串类型的变量
print(my_name,的幸运数字为: ,luck_number)
print( luck_number的数据类型是: ,type(luck_number))
#Python动态修改变量的数据类型,通过赋不同类型的值就可以直接修改
#变量的值可以更改
luck_number= 北京欢迎你
print( luck_number的数据类型是: ,type(luck_number))
#Python允许多个变量指向同一个值
no=number=1024
print(no , number)
print(id(no))
print(id(number))
2.5 整数类型
【代码01】整数类型
# coding: utf-8
num=987 #默认十进制,表示整数
num2=0b1010101 #使用二进制表示整数
num3=0o765 #使用八进制表示整数
num4=0x87ABF #使用十六进制表示整数
print(num)
print(num2)
print(num3)
print(num4)
计算器验证
2.6 浮点数类型_复数类型
【代码01】浮点数类型
# coding : utf-8
height=187.6#身高print(height)
print(type(height)) #查询height的数据类型
x=10
y=10.0
print( x的数据类型是: ,type(x))
print( y的数据类型是: ,type(y))
print( -------------------)
#浮点数不确定的尾数问题
print(0.1 0.2) #0.30000000000000004!
print(round(0.1 0.2,1)) #保留1位小数
【代码02】复数类型
# coding: utf-8
#复数类型在科学计算中十分常见
x=123 456j
print(实数部分: ,x.real)
print(虚数部分: ,x.imag)
2.7 字符串类型
【代码01】字符串类型
#coding : utf-8#单行字符串
city=北京
address="北京市海淀区海淀文教产业园"
print(city)
print(address)
print( -------------------)
#多行字符串
info=地址:北京市海淀区海淀文教产业园
收件人:杨淑娟
手机号:18600000000
print(info)
info2="""地址:北京市海淀区海淀文教产业园
收件人:杨淑娟
白手机号:18600000000"""
print( -------------)
print(info2)
2.8 转义字符
【代码01】转义字符
# coding : utf-8
print(北京)
print(欢迎你)
print( ------------------)
print( 北京
欢迎你)#遇到
即换行,可连接续换多行
print( 北
京
欢
迎
你)
print( ------------)
print(北京 欢迎你)
print(北京北京 欢迎你)
print( hellooooo)
print( ------------)
print(老师说:好好学习,天天向上)
print(老师说:"好好学习,天天向上")
print(r北
京
欢
迎
你)
print(R北
京
欢
迎
你)
北京没有占满8个空格,因此北京后面有4个空格。 一个完整的 是八个空格。
R或r也叫原子符
2.9 字符串的索引和切片
【代码01】字符串的索引和切片
# coding: utf-8
s= HELLOWORLD
print(s[0], s[-10]) #序号0和序号码0表示的是同一个字符
print(北京欢迎你[4])
print(北京欢迎你[-1])
print( ------------)
print(s[2:7])#正向递增序列
print(s[ -8:-3]) #反向递减序列#N默认从0开始
print(s[ :5])
#默认是切到字符串的结尾
print(s[5:])
2.10 字符串类型的操作
【代码01】字符串类型的操作
# coding : utf-8
x=2022年
y=北京冬奥会
print(x y)#拼接字符串x与y
print(10*x)#x字符串的内容输出10次print(x*10)
print(北京 in y)#北京!是否是.“北京冬奥会”的子宝符患
print(上海 in y)
2.11 布尔类型
【代码01】布尔类型
#coding : utf-8
x=True
print(x)
print(type(x))
print(True 10)#1 10
print(False 10)#0 10
print( ----------)#测试对象的bool值
print(bool(18))#True
print(bool(0), bool(0.0))#False#总结,非0的数值型布尔值都为True ,
print(bool(北京欢迎你))#True
print(bool()) #空字符患的布尔值为False
print(bool(False))
print(bool(None))
2.12 数据类型之间的转换
【代码01】数据类型之间的转换
# coding : utf-8
x=10
y=3
z=x/y #在执行除法运算,将运算的结果赋值给z
print(z,type(z)) #隐式转换,通过运算隐式的转了结果的数据类型
#float类型转换成int类型,只保留整数部分
print( float类型转换成int类型,int(3.14))
print(float类型转换成int类型 ,int(3.9))
print( float类型转换成int类型,int(-3.14))
print( float类型转换成int类型,int(-3.9))
#将int类型转换成float类型
print( 将int类型转换成float类型 , float(10))
#将str类型转成int类型
print(int( 100 ) int( 200))
#将int类型转换成float类型
print( 将int类型转换成float类型 , float(10))
#将str类型转成int类型
print(int( 100 ) int( 200))
#将str.类型转成float类型
print(将str类型转成float类型 , float(3.14))
#将str转成int或float类型报错的情况
#print(int(18a)) #ValueError: invalid literaL for. int() with. base. 10: 18a
#print(int(3.14)). #ValueError: invalid literaL for. int() with base 10: 3.14
#将str转成loat类型报错的情况
#print(float ( 45a.987)) #ValueErron: could not convert string to float: .45a.987
#chr().与ord()函数
print(ord(杨)) #26472..将宝符”杨转成对应的整数值
print(chr(26472)) #杨将整数值转成对应的字符
#进制之间的转换操作十进制与其它进制之间的转换
print(十进制转成十六进制: hex(26472))
print(十进制转成八进制: oct(26472))
print(十进制转成二进制: bin(26472))
2.13 eval函数的使用
【代码01】eval函数的使用
# coding : utf-8
s=3.14 3
print(s,type(s))
x=eval(s)#执行了加法运算
print(x, type(x))
#eval()函数经常和input()函数一起使用,用来获取用户输入的数值型
age=eval(input(请输入您好的年龄:))#将字符串类型转成了int类型,相当于int(age)
print(age,type(age))
height=eval(input(请输入您的身高:))#将字符串类型转成了float类型,相当于float(height)
print(height,type(height))
##需要提提前声明Hello,否则的话,去掉双引号之后汇报错。
hello=北京欢迎你
print(hello)
#使用eval报错的情况
print(eval(hello )) #NameError: name . . hello is.not defined.Did you mean:." help
2.14 不同进制之间的计算
手工版进制转换。需要转成什么就除以什么。然后从下往上写即可。
2.15 算术运算符
【代码01】算术运算符
# coding: utf-8
print(加法:,1 1)
print(减法:,1-1)
print(乘法:,2*3)
print(除法:,10/2)#.发生了隐式转换print(取余:,10%3)
print(整除:,10//3)
print(幂运算:,2**3)#2*2*2
2.16 赋值运算符
【代码01】赋值运算符
# coding: utf-8
x=20#直接赋值,直接将20赋值给左侧的变量x
y=10
x=x y #将x y的和赋值绘x,x的值为30
print(x)
x =y
print(x)#40Tx-=y#相当于X=X-y
x-=y
print(x)#30
x*=y #X=X*y
print(x)
x/=y# x=x/y
# print(x)#30.0
x%=2#×=x%2
print(x)#0.0
z=3
y//=z # y=y/lz
print(y)#3
y**=2#y=y**2
print(y)
#Python支持链式赋值
a=b=c=100#相当于执行了a=100..b=100 c=100
print(a, b,c)
#Python支持系列解包赋值
a, b=10,20#相当于执行了a=10b=20
print(a, b)
print( --------如何交换两个变量的值--------)
#temp=0
#temp=a..#将a的值班赋值给temp,..temp的值为19
#a=b...i#...将b的值赋值给a...,a的值为20
#b=temp..#将temp 的值赋值给b,.b的值是10
#print(a,b)
b,a=a,b #将a的值赋给了b,将b的值赋给了a
print(a, b)
2.17 比较运算符
【代码01】比较运算符
# coding : utf-8
print( 98大于90吗? ,98>90)
print( 98小于90吗?,98<90)
print( 98等于90吗?,98==90,98等于98吗? ,98==98)
pint( 98不等于90吗?,98!=90,98不等于98吗? ,98!=98)
print( 98大于等于98吗? ,98>=98)
print( 98小于等于98吗,98<=98)
2.18 逻辑运算符
【代码01】逻辑运算符
# coding : utf-8
print(True and True)
print(True and False)
print(False and False)
print(False and True)
print( --------------------------)
print(8>7 and 6>5)# True and True
print(8>7 and 6<5)# True and False
print(8<7 and 10/0)#当第一个表达式为False时,不计算第二个表达式
print( --------------------------)
print(True or True)
print(True or False)
print(False or False)
print(False or True)
print( --------------------------)
print(8>7 or 10/0)#当第一个表达式为True时,不计算第二个表达式
print( --------------------------)
print(not True )
print(not False)
print(not (8>7))
2.19 位运算
【代码01】位运算
# coding: utf-8
print(12&8)#位与运算
print(4|8)#位或运算
print(31^22)#位异或运算
print(~123)#位取反运算
#左移位
print(左移位: ,2<<2)#将2..向左移动2位
print(左移位: ,2<<3)#将2,向左移动3位
print(右移位:,8>>2)#将8向右移动2债
print(右移位:,-8>>2)
2.20 运算符的优先级
2.21 章节小任务
【代码01】实战一:求个位,十位,百位,千位数字。
num=eval(input(请输入一个四位整数:))
sd=num#个位上的数字
tens=num//10 #十位上的数字
hundred=num//100#百位上的数宝
thousands=num//1000#千位上的数字
print(个位上的数字: , sd)
print(十位上的数字: , tens)
print(百位上的数字: , hundred)
print( 千位上的数字: , thousands)
【代码02】实战二预测儿子身高
# coding: utf-8
father_height=eval(input(请输入父亲的身高: ))
monther_height=eval(input(请输入母亲的身高:))
son_height=(father_height monther_height)*0.54
print(预测儿子的身高为: , round(son_height, 2))
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至123456@qq.com 举报,一经查实,本站将立刻删除。