python基础学习笔记3:标准输入和数据类型转换

标准输入

输入

实际工作中,我们经常输入获取用户的输入信息,如银行系统中的密码输入、淘宝中的用户登录验证。
在这里插入图片描述

input()输入方法

在Python中,如果想让Python程序接受用户的输入信息,可以使用input()方法

基本语法

input()

但是往往只有input()方法,其意义不大,我们还应该使用一个变量来临时接受用户的输入,已方便后期的操作。

变量名称 = input('提示信息:')

案例

银行系统中的,输入密码的过程

password = input('请输入您的银行卡密码:')
print(f'您输入的银行卡密码为:{password}')

input()方法重要事项

所有由input()方法获取的数据都是字符串类型

name = input('请输入您的姓名:')
age = input('请输入您的年龄:')

print(type(name))  # <class 'str'>
print(type(age))  # <class 'str'>

类型转换

使用Python实现超市的收银系统,输入商品名称、商品编号和商品价格,按照格式输出内容:您购买了苹果,商品编号为211001,商品价格为3.5,欢迎下次光临!`。

name = input('请输入您要购买商品名称:')
id = input('请输入您要购买商品编号:')
price = input('请输入您要购买的商品价格:')

print(f'您购买了{name},商品编号为{id},商品价格为{price},欢迎下次光临!')

以上程序虽然可以按照上图完成程序的正常输出,但是遗留了一个非常严重的问题:这个价格price变量无法参与数学运算(如买了两个苹果,应该是3.5 * 2),原因在于input()方法返回的所有的结果都是str字符串类型。

怎么解决以上问题呢? 答:使用数据类型转换

数据类型转换

案例1

把用户输入的幸运数字,转换为整型。

num = input('请输入您的幸运数字:')
print(type(num))

#数据类型转换,把str字符串类型转换为int类型
num = int(num)
print(type(num))

以上代码还可以简写为:

num = int(input('请输入您的幸运数字:'))
print(type(num))

案例

多种数据类型转换

# 1、整型转浮点类型 int => float
num1 = 10
print(float(num1))
print(type(float(num1)))

# 2、浮点类型转换为整型 float => int,浮点转整型,其小数点后的数据会丢失!!!
num2 = 18.88
print(int(num2))

# 3、把字符串类型转换为整型或浮点类型
str1 = '20'
str2 = '10.88'
print(type(int(str1)))
print(type(float(str2)))

案例3

eval()方法的使用,把字符串中的数字转换为原数据类型。

price = input('请输入您购买商品的价格:')
print(eval(price))
print(type(eval(price)))

str1 = '10'   
print(eval(str1)) #经过eval(str1)   转换为int类型
str2 = '10.88' 
print(eval(str2)) #经过eval(str2)  转换为float类型

总结

上面提到了4种数据类型转换方法:

  • int() :转整型
  • float() :转浮点类型
  • str() :转字符串类型
  • eval() :把字符串转换为原数据类型
    但是要特别注意:当float浮点类型转换为int整型时,其小数点后面的数据会丢失,一定要记住这个特性。

下表列出常用的类型转换方法

函数说明
int(x [,base ])将x转换为一个整数
float(x)将x转换为一个浮点数
complex(real [,imag ])创建一个复数,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)将一个整数转换为一个二进制字符串
  • 3
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

少儿编程乔老师

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值