数据类型转换
4月3日-->
输出
作用:程序员输出给用户
# 输出 print
print("hello word")
格式输出
所谓的格式输出就是按照一定的格式是输出内容
格式化符号
格式符号 | 转换 |
---|---|
%s | 字符串 |
%d | 整数 |
%f | 浮点数 |
%u | 无符号十进制整数 |
%o | 八进制整数 |
%x | 十六进制整数(小写OX) |
%e | 小数点后面六位有效数字,以指数形式输出实数 |
%g | 根据大小自动选f格式或e格式,且不输出无意义的零 |
输出整数
number = 133144
# 打印整数 %d
print("打印整数: %d" % number)
# %o —— oct 八进制 了解
print("打印输出133144的八进制:%o"%number)
# %d —— dec 十进制
print("打印输出133144的十进制:%d"%number)
# %x —— hex 十六进制 了解
print("打印输出133144的十六进制:%x"%number)
输出字符串
number = 133144
# 字符串 %s
print("打印字符串: %s" % number)
# 字符输出格式化占位符 %10s和%+10s右对齐,占位符10位
print("向右对齐:%10s" % number1)
print("向右对齐:%+10s" % number1)
# 字符输出格式化占位符 %-10s和%+10s 左对齐,占位符10位
print("向左对齐:%-10s" % number1)
# 截取变量前3位字符串 %.3s
print("截取3位字符:%10.3s" % number1)
输出浮点数
number1 = 175.8
#打印浮点数 %f
print("打印浮点数:%f" % number1)
# 打印浮点数保留2位小数
print("打印浮点数保留2为小数:%.2f" % number1)
# 科学计数法
print("打印科学计数法:%e" % number1)
# 保证3位小数
print("保证三位小数:%.3g" % number1)
练习
%06d,%.6d表示输出的整数显示位数,不⾜以0补全,超出当前位数则原样输出
%.2f,表示⼩数点后显示的⼩数位数。
age = 20
name = "yuwen"
weight = 65.6
heighet = 175
stu_id = 1
#输出字符串
print("我的名字叫:%s" % name)
#输出补0
print("我的学号为:%.3d" % stu_id)
#输出两位浮点小数
print("我的体重:%.2f公斤" % weight)
#联合输出
print("我叫%s,学号为%03d,身高%d,体重%.2f" % (name, stu_id, heighet, weight))
#整数可以添加运算符
print("我叫%s,学号为%.3d,身高%d,体重%.2f" % (name, stu_id, heighet + 2, weight))
format的用法
相对基本格式化输出采用‘%’的方法,format()功能更强大,该函数把字符串当成一个模板,通过传入的参数进行格式化,并且使用大括号‘{}’作为特殊字符代替‘%’ (Python2.6以后才支持)
age = 20
name = "yuwen"
weight = 65.6
heighet = 175
stu_id = 1
#使用fromat做索引
print("我叫{},学号为{},身高{},体重{}".format(name, stu_id, heighet, weight))
#索引从 0 开始数
print("我叫{0},今年{4},学号为{1},身高{2},体重{3}".format(name, stu_id, heighet, weight, age))
#附带关键字
print("大家好,我叫{name},今年{age},学号为{stu_id},身高{heighet},体重{weight}".format(name, stu_id, heighet, weight, age))
format的缩写
age = 20
name = "yuwen"
weight = 65.6
heighet = 175
stu_id = 1
#fromat 缩写 (f"{变量1},{变量2},{变量3}")
print(f"大家好,我叫{name},今年{age},学号为{stu_id},身高{heighet},体重{weight}"))
转义字符
\n :换⾏。
\t :制表符,⼀个tab键(4个空格)的距离。
\ : 续行符
\' : 单引号
\" : 双引号
# 换行 \n
print(f"大家好,我叫{name},\n今年{age},学号为{stu_id},\m身高{heighet},体重{weight}")
# tab 空四个字符
print(f"大家好,我叫{name},\t今年{age},\t学号为{stu_id},\t身高{heighet},\t体重{weight}")
# 续行 \
print(f"大家好,我叫{name},今年{age},学号为{stu_id},\
身高{heighet},体重{weight}")
# 转义 \"
print(f"大家好,我叫\"{name}\",今年{age},学号为{stu_id},身高{heighet},体重{weight}")
# 转义 \'
print("大家好我叫\'yuwen\'")
输入
在Python中,程序接收⽤户输⼊数据的功能即是输⼊
输入的语法
# input接收的内容是字符串
input("请输入密码")
输入的特点
- 当程序执⾏到 input ,等待⽤户输⼊,输⼊完成之后才继续向下执⾏。
- 在Python中, input 接收⽤户输⼊后,⼀般存储到变量,⽅便使⽤。
- 在Python中, input 会把接收到的任意⽤户输⼊的数据都当做字符串处理。
My_Name = input("输入你的名字:")
print("我的名字叫:", My_Name)
print(type(My_Name))
# <class 'str'>
数据类型的转化
- 数据类型转换的必要性
- 数据类型转换常⽤⽅法
奥特曼在打怪兽的时候,经常切换形态
- 天上飞的:换蓝色
- 地上跑的:换红色
- 能飞能跑的:两个颜色都要有
转化数据类型的作用
问:input()接收⽤户输⼊的数据都是字符串类型,如果⽤户输⼊1,想得到整型该如何操作?
答:转换数据类型即可,即将字符串类型转换成整型。
函数 | 说明 |
---|---|
int(x) | 将x转化为整数 |
float(x) | 将x转化为浮点数 |
str(x) | 将x转化为字符串 |
eval(str) | 将字符串中的数据转换成Python表达式原本类型 |
tuple(s ) | 将序列 s 转换为⼀个元组 |
list(s ) | 将序列 s 转换为⼀个列表 |
chr(x ) | 将⼀个整数转换为⼀个Unicode字符 |
ord(x ) | 将⼀个字符转换为它的ASCII整数值 |
hex(x ) | 将⼀个整数转换为⼀个⼗六进制字符串 |
oct(x ) | 将⼀个整数转换为⼀个⼋进制字符串 |
bin(x ) | 将⼀个整数转换为⼀个⼆进制字符串 |
快速体验
# 1. 接收⽤户输⼊
num = input('请输⼊您的幸运数字:')
# 2. 打印结果
print(f"您的幸运数字是{num}")
# 3. 检测接收到的⽤户输⼊的数据类型 -- str类型
print(type(num))
# 4. 转换数据类型为整型 -- int类型
print(type(int(num)))
实例
# 转浮点型
num1 = 1
test1 = float(num1)
print(type(test1), "\t", test1)
# 转字符串类型
num2 = 2
test2 = str(num2)
print(type(test2), "\t", test2)
# 列表转元组
list1 = [1, 2, 3, 4, 5, 6]
list3="[1, 2, 3, 4, 5, 6]"
tuple1 = tuple(list1)
print(type(list1), "\t", tuple1)
# 列表转为字典
list2= set(list1)
print(type(list2),"\t",list2)
#扒去上衣
list_str=eval(list3)
print(type(list_str),list_str)
#实现一个字符串转,整数,输出保留两位小数的结果
Text_Float = input("请输入一个小数")
Text_int = int(float(Text_Float))
print("我输入的数字是:%.2f" % Text_int, type(Text_int))