一.格式化输出:所谓的格式化输出即按照⼀定的格式输出内容。
1.格式化符号
格式化符号也称为占位符,表示在某个地方占一个位置,然后按照一定的格式去输出,例如以下这段代码,分别按照十进制,八进制,十六进制的格式去输出一个 整数
# 占位符
num=10086
#按照十进制输出
print("输出十进制我的电话号码是:%d" % num)
# 按照八进制输出
print("输出八进制我的电话号码是:%o" % num)
# 按照十六进制输出
print("输出十六进制我的电话号码是:%x" % num)
其中重点就是三个:%s %d %f,其他的格式化符号了解知道就行
%s:将输出类型转化为字符串,整数,小数,字符串都可以转化
%.2s:表示截取两位字符串
%-10s:表示左对齐,占位符10位,也就是往左走10个空格
%10s:表示右对齐,占位符10位,也就是往右走10个空格
%10.2s:表示占位符10位,且截取两位字符串,也就是往右走10个空格同时截取2位字符串
number = 10086
num = 180.25
var1 = "坤哥"
print("全民制作人,大家好,我的名字是:%s" % var1)
print("我的身高是:%s" % num)
print("我的电话号码是:%s" % number)
%f:将输出类型转化为浮点数(默认保留六位小数,位数不够时自动添0)
%.2f:小数点后的数字为转化为浮点数后保留的小数位数,例如%.2f是将一个数保留2位小数
注意:在较新版本的python中,满六进一,不是传统的满五进一
num = 10086
number1 = 180.25
number2 = 180.26
print("我的电话号码是:%f" % num) # 将整数输出为浮点数,默认保留六位小数
print("我的身高为:%f" % number1) # 将小数输出为浮点数,默认保留六位小数
# 较新版本python中,满六进一
print("我的身高为:%.2f" % number1) # 将小数输出为浮点数,并保留两位小数,结果为180.2
print("我的身高为:%.2f" % number2) # 将小数输出为浮点数,并保留两位小数,结果为180.3
%u:无符号十进制整数,只存在0和整数 了解即可
%e:科学计数法,小数点后六位有效数字 了解即可
例如:将180.25用%e进行格式化输出,结果为:1.802500e+02,02表示是10的二次方,也就是180.25转化为1.802500退了的位数
%g:根据数字大小,自动选择%f或者%e格式进行输出 了解即可
2.如何输出多个占位符
在引号内用%进行占位,在外面%然后加一个括号,括号里面写要占位的内容
num = 10086
result = 180.25
var1 = "坤哥"
love = "篮球"
print("全名制作人,大家好,我是:%s,我的身高是:%s,我的电话号码是:%s,我的爱好是:%s" % (var1, result, num, love))
3.format的用法
format()也是一种占位符
使用方法如下:
在引号内把需要占位的地方用大括号括起来,然后在引号外直接.format,把你需要占位的东西输进去,顺便提一句,在python中.这个符号表示调用方法
num = 10086
result = 180.25
var1 = "坤哥"
love = "篮球"
print("全名制作人,大家好,我是:{},我的身高是:{},我的电话号码是:{},我的爱好是:{}".format(var1, result, num, love))
# {1},{2},{3},{4},索引值,从0开始
print("全名制作人,大家好,我是:{0},我的身高是:{1},我的电话号码是:{2},我的爱好是:{3}".format(var1, result, num, love))
print("全名制作人,大家好,我是:{3},我的身高是:{2},我的电话号码是:{0},我的爱好是:{1}".format(num, love, result, var1))
print("全名制作人,大家好,我是:{var1},我的身高是:{result},我的电话号码是:{num},我的爱好是:{love}".format(num=num, love=love, result=result, var1=var1))
print("全名制作人,大家好,我是:{name},我的身高是:{height}".format(name=var1, height=result))
# f"xxx{}xxx"方法
print(f"全名制作人,大家好,我是:{var1},我的身高是:{result},我的电话号码是:{num},我的爱好是:{love}")
4.转义字符的使用
(1)\'和\"的使用
如果在双引号(单引号)里面还想加双引号(单引号)怎么办呢?
如果直接加的话会报错,这时候我们需要使用转义字符:
print("大家好我是\"坤哥\",我的身高是180,爱好是篮球")
print('大家好我是\'坤哥\',我的身高是180,爱好是篮球')
(2)\n换行符的使用
如果我们想在print一句话里面,对这句话进行换行该怎么办呢?
这个时候要用到我们的换行符了\n了
print("全名制作人,大家好,我是:坤哥\n我的身高是:180\n我的电话号码是:10086\n我的爱好是:篮球")
(3)\t制表符的使用
制表符就相当于四个空格,使用方法如下:
print("全名制作人,大家好,我是:坤哥\t我的身高是:180\t我的电话号码是:10086\t我的爱好是:篮球")
(4)\续行符的使用
当一句话很长的时候一行打印不完,我们换行了,但是想打印出一行的效果怎么办?
这个时候就需要使用续行符了
print("全名制作人,大家好,我是练习时长两年半的偶像练习生:坤哥,\
我的身高是:180,我的电话号码是:10086,我的爱好是:篮球")
5.输入:input函数
当代码中执行到input的时候,如果这个时候不进行输入东西回车,那么代码不会继续执行,会一直停留在那个地方
例如:
password = input("请输入你的密码:")
print("输入完回车后,才执行这句话")
eval()函数,括号中只能放str
eval表示扒去他的"上衣",这里的上衣指的是字符串的引号,把他还原成原本的数据类型
Password = eval(input("请输入你的密码:")) # 可输入整数,小数,字符串
print(password)
print(type(password))
5.数据类型转化
易错:长得像整数的字符串,可以转化为整数或浮点数
长得像小数的字符串,只能转化为浮点数,不能转化为整数
Num1 = 100 # int
Num2 = "180" # str
Result1 = 123.456 # float
Result2 = "185.43" # float
# 整数与浮点数相互转化
test1 = float(Num1)
print(test1)
print(type(test1))
test2 = int(Result1)
print(test2)
print(type(test2))
# 字符串转化为整数
test3 = int(Num2)
print(test3)
print(type(test3))
test4 = float(Num2)
print(test4)
print(type(test4))
# 字符串转化为小数
text5 = float(Result2)
print(text5)
print(type(text5))
列表,元组,集合的相互转化
List1 = [1, 2, 3, 4, 5] # list
List2 = "[1,2,3,4,5]" # str
text7 = eval(List2)
print(text7)
print(type(text7))
tu1 = (1, 2, 3, 4, 5) # tuple
tu2 = "(1,2,3,4,5)" # str
text8 = eval(tu2)
print(text8)
print(type(text8))
set1 = {1, 2, 3, 4, 5} # set
set2 = "{1,2,3,4,5}" # str
text9 = eval(set2)
print(text9)
print(type(text9))
# 列表转元组和集合
text10 = tuple(List1)
text11 = set(List1)
print(text10)
print(text11)
# 元组转列表和集合
text12 = list(tu1)
text13 = set(tu1)
print(text12)
print(text13)
# 集合转列表和元组
text14 = list(set1)
text15 = tuple(set1)
print(text14)
print(text15)