输入
1.2输入语法
input('提示信息')----input是一个函数
1.3输入的特点
- 当程序执行到input,等待用户输入,输入完成之后才继续向下执行/
- 在python中,input接收用户输入后,一般存储到变量,方便使用。
- 在python中,input 会把接收到的任意用户输入的数据都当作字符串处理。
2.应用与验证
- 遇到input,等待输入
- 接受输入信息input 存储变量
- input接收到的信息都是字符串类型
passwrod=input('请输入您的密码')
print(f"您的密码是{passwrod}")
# 小拓展 type应用检测数据类型
print(type(passwrod))
检测结果
目标
- 数据类型转换的必要性
- 数据类型转换常用方法
一、转换数据类型的作用
问:input()接受用户输入的数据都是字符串类型,如果用户输入1,想得到整型如何操作?
答:转换数据类型即可,即将字符串类型转换成整型。
二.转换数据类型的函数
函数 | 说明 |
int(x[,base]) | 将x转换为一个整数 |
float(x) | 将x转换为一个浮点数 |
comp;ex(real[,imga]) | 创建一个复数,real为实部,imag为虚部 |
str(x) | 将对象x转换为字符串 |
repr(x) | 将对象x转换为表达式字符串 |
eval(str) | 用来计算机在字符串中有效Python表达式,并返回一个对象 |
tuple(s) | 将序列s转换为一个元祖 |
list(s) | 将序列s转换为一个列表 |
chr(x) | 将一个整数转换为一个Unicode字符 |
ord(x) | 将一个字符转换为它的ASCII整数值 |
hex(x) | 将一个整数转换为一个十六进制字符串 |
oct(x) | 将一个整数转换为一个八进制字符串 |
bin(x) | 将一个整数转换为一个二十进制字符串 |
- 体验int(x[,base])
1.input
2.检测input数据类型
3.int()转换数据类型
4.检测是否转换成功
age=input('请输入年龄')
print(type(age)) # str
print(type(int(age))) # int
02数据类型转换函数
# 1. float()------将数据转换成为浮点数
num1=1
str1="10"
print(num1) # 1
print(float(num1)) # 1.0
print(type(num1)) # int
print(type(float(num1))) # float
print(type(float(str1))) # float
# 2. str()-----将数据转换为字符串
print(type(str(num1))) # str
# tuple() --将序列转换为元组
list1=[10,20,30]
print(tuple(list1)) # (10, 20, 30) 元组-----()小括号为元组
# 4.list ---将序列转换为列表
t1=(10,20,30)
print(list(t1)) # [10,20,30]列表 ----[]中括号为列表
# 5. eval()---计算机在字符串中有效python表达式,并返回一个对象
# 描述:eval() 把字符串里面的数据 转换成它原本的数据
st2="1"
st3="1.1"
st4='(1000,2000,3000)'
st5='[1000,2000,3000]'
print(eval(st2)) #1
print(eval(st3)) #1.1
print(eval(st4)) #(1000, 2000, 3000)
print(eval(st5)) #[1000,2000,3000]
总结数据类型的转换
- int()---------整型
- float()-------浮点型
- str()---------字符串
- list()---------列表
- tuple()------元组
- eval()-------原始型数据
python console 交互式开发环境-------拓展
- 自动加载python已经调试过的解释器
- 适用于测试极简单代码
- 无须输入prinut也能输出 (注意:代码不会保存 退出后会消失 )
- 储存在内存中,没有写入硬盘的
运算符的分类-----有很多中
- 算数运算符---------即做加减惩处运算
- 赋值运算符---------即:之前定义变量 =
- 复合赋值运算符---
- 比较运算符---------通常用判断配合(逻辑运算符)使用 < > =
- 逻辑运算符---------如:1>0 且必须<5 (且 就是逻辑运算符的幻化)
1.⭐算数运算符 需掌握牢记⭐
注意:
- 混合运算优先级顺序:()高于**高于*/ // % 高于+ -
- 参与运算的数字有浮点数。得到结果就是浮点数
- 除法比较特殊,只要是参与运算是除法得到结果一定是小数
运算符 | 描述 | 实列 |
+ | 加 | 1+1输出结果为2 |
- | 减 | 1-1输出结果为0 |
* | 乘 | 2*2输出结果为4 |
/ | 除 | 10/2输出结果为5 |
// | 整除 | 9//4输出结果为2 |
% | 取余 | 9%4输出结果为1 |
** | 指数 | 2**4输出结果为16,即2*2*2*2 |
() | 小括号 | 小括号用来提高运算优先级,即(1+2)*3输出结果为9 |
在python Console里进行运算演示(python Console 适合测试简单的代码)
2.赋值运算符
- 单个变量赋值
运算符 | 描述 | 实列 |
---|---|---|
= | 赋值 | 将=右侧的结果赋值给等号左侧的变量 |
num=1
print(num)
- 多个变量赋值
num1,float1,str1=10,0.5,'hello world'
print(num1)
print(float1)
print(str1)
运行结果如下
- 多个变量赋相同值
- a=b=10 ---------是ab拥有相同的值
- (num1,float1,str1=10,0.5,'hello world') 1. 2. 都是为什么化简代码量的做用
a=b=100
print(a) #100
print(b) #100
3.复合赋值运算符
运算符 | 描述 | 实列 |
---|---|---|
+= | 加法赋值运算符 | c+=a 等价于c=c+a |
-= | 减法赋值运算符 | c-=a 等价于c=c-a |
*= | 乘法赋值运算符 | c*=a等价于c=c*a |
/= | 除法赋值运算符 | c/=a 等价于c=c/a |
//= | 整除赋值运算符 | c//=a 等价于c=c//a |
%= | 取余赋值运算符 | c%=a等价于c=c%a |
**= | 幂赋值运算符 | c**=a等价于c=c**a |
当解释器,解释到复合赋值运算符时,先计算算数运算符,将算数运算符执行的结果在取=号赋值到左边的变量
如:下列代码
a=10
a+=2
#输出12 a=a+1,最终a=10+2
print(a)
- 复合赋值运算符拓展
先算复合赋值运算符右边的表达式;算复合赋值运算符
c=10
#c=10+1+2
#c+=----c=c+3
c+=1+2 #13
print(c)
d=10
d*=1+2 #------30
print(d)
4.比较运算符
- 比较运算符(布尔型)只会得到两个结果True和False,判断的时候才会用比较运算符
运 算 符 | 描述 | 实列 |
---|---|---|
== | 判断相等。如果两个操作数的结果相等,则条件结果为真(True),否则条件结果为假(False) | 如a=3,b=3,则(a==b)为True |
!= | 不等于,如果两个操作数结果不相等,则条件真(True),否则条件结果为假(False) | 如a=3,b=3,则(a==b)为Ture如a=1,b=3,则(a!=b)为Ture |
> | 运算符左侧操作数结果是否大于右侧操作结果,如果大于,则条件为真。否则为假 | 如a=7,b=3,则(a>b)为Ture |
< | 运算符左侧操作数结果是否小于右侧操作结果,如果小于,则为真。否则为假 | 如a=7,b=3(a<b)False |
>= | 运算符左侧操作数结果是否大于等于右侧操作结果,如果大于,则条件为真,否则为假 | 如a=7,b=3则(a<b)为False 如a=3,b=3,则(a>=b)为True |
<= | 运算符左侧操作数结果是否小于等于右侧操作数结果,如小于为真,否则为假 | 如a=3,b=7则(a<=b)为True,如a=3,b=3(a<=b)为True |
5.逻辑运算符
- and;都是True 才是True
- or ;其中x和y 只要有一个表达返回的结果是True 那么返回的是 True,只要表达式都返回的是False 才是False
- not;取反义词
运算符 | 逻辑表达式 | 描述 | 实列 |
---|---|---|---|
and | x and y | 布尔“与”:如果x为False,x and y 返回False,否则它返回y 的值 | True and False,返回 False |
or | x or y | 布尔“或”:如果x 是True ,它返回True,否则它返回y的值。 | False or True ,返回 True。 |
not | not x | 布尔“非”:如果 x 为True,返回False,如果x为False,它返回True | not True 返回 False,not False 返回 True |
a=0
b=1
c=2
#1. and;与 都真才真
print(a < b and c > b)
print(a > b and c > b)
#2. or;或 一真都真。都假才假
print(a < b or b > a)
print(a < b or b < a)
#3. not;非 ;取反义词
print(not False)
print(not c > b)
- 逻辑运算符拓展
();作用优先算小括号里面的,且适用于工作交接 避免产生歧义
a=0
b=1
c=2
print((a < b) and (c > b))
print((a > b) and (c > b))
print(not(a > b))
5.1拓展
数字之前进行逻辑运算
a=0
b=1
c=2
# and运算符,只要有一个值为0,则结果为0,否则结果为最后一个非0数字
print(a and b) # 0
print(b and a) # 0
print(a and c) # 0
print(c and a) # 0
print(c and b) # 1
print(b and c) # 2
# or运算符,只有所有值为0结果才为0,否则结果为第一个非0数字
print(a or b) # 1
print(a or c) # 2
print(b or c) # 1
总结
- 算数运算优先级
混合运算优先级顺序;()高于 ** 高于 * / // % 高于 + -
- 赋值运算符
=
- 复合赋值运算符
● +=
● -=
● 优先级
1.先算复合赋值运算符右侧表达式
2.再算复合赋值运算的算数运算
3.最后算赋值运算
● 判断相等:==
● 大于等于:>=
● 不等于: !=
● 逻辑运算符
● 与:and
● 或:or
● 非:not
- 比较运算符