Python输入与输出(基础篇)
一个交互式的程序,需要支持用户输入与输出。输入是指程序能接收用户输出的内容,输出是指程序运行之后,保存或显示相应的结果。
一个交互式的程序,需要支持用户输入与输出。输入是指程序能接收用户输出的内容,输出是指程序运行之后,保存或显示相应的结果。
一、输入
Python使用input方法接收用户的输出,如下
content=input("请输入任意内容:")
print("用户输入的内容:",content)
print("输入数据的类型:",type(content))
content=input("请输入任意内容:")
print("用户输入的内容:",content)
print("输入数据的类型:",type(content))
执行程序后,就可以在底部控制台输入内容。执行程序后,就可以在底部控制台中输入内容,输入完毕后单击【Enter】键完成本次交互,然后程序正常退出。若是用户想输入多次,调用多次input方法即可。在这里第1行和第4行分别让用户输入两次,然后输出用户输入内容及类型。
请输入任意内容:hello
用户输入的内容: hello
输入数据的类型: <class 'str'>
请输入任意内容:123
用户输入的内容: 123
输入数据的类型: <class 'str'>
执行结果如上,可以看出不管用户输入的是字符串还是数字,input方法都会将接收的数据转换为字符串类型。
二、输出
Python程序的输出有多种形式,如输出到文本。数据库等。这里介绍如何将数据输出到控制台及各种格式化输出。
1.print函数
print函数的功能是将内容输出到控制台上,如下,print函数的输出默认会自动换行,解决方法是将参数" end “设置为空或” \t "这样的制表符。
print("hello")
print("world")
print("hello",end="\t")
print("world")
执行结果如下
hello
world
hello world
2.格式化输出
如下表,显示了Python格式化字符串的转换逻辑。
格式化符号 | 转换逻辑 |
---|---|
%c | 转换成字符及ASCII码 |
%s | 优先使用str函数进行转换 |
%d或%i | 转换成有符号十进制数 |
%f或%F | 转换成浮点数 |
%u | 转换成无符号十进制数 |
%o | 转换成无符号八进制数 |
%x或%X | 转换成无符号十六进制数 |
%e或%E | 转换成科学计数法 |
%g或%G | %f(F)和%e(E)的简写 |
%% | 直接输出% |
在格式化时,还可以使用辅助指令,控制最终字符显示方式,如下表
符号 | 转换逻辑 |
---|---|
- | 左对齐 |
+ | 在正数前面显示加号 |
% | ‘%%‘输出一个单一的’%’ |
* | 定义宽度和小数点精度 |
# | 在八进制数前面显示’0’,在十六进制数前面显示’0x’或者’0X’ |
0 | 显示的数字前面填充’0’,而不是默认的空格 |
< sp > | 在正数前面显示空格 |
(var) | 映射变量(字典参数) |
m.n. | m是显示的最小总长度,n是小数点后的位数 |
具体使用方法如下
a="hello world"
print("格式化多个符号:","%s"%a)
a="H"
print("%c只能格式化单个字符:","%c"%a)
a=8
print("格式化整数:","%d%%"%a)
a=8.8888
print("格式化浮点数,保留2位小数:","%.2f"%a)
a=8.8888
print("格式化成整数:","%+u"%a)
a=8.8888
print("转换成科学计数法:","%e"%a)
a=8.8888
b=9.9999
print("第一个数:%s,第二个数:%s" %(a,b))
执行结果如下
格式化多个符号: hello world
%c只能格式化单个字符: H
格式化整数: 8%
格式化浮点数,保留2位小数: 8.89
格式化成整数: +8
转换成科学计数法: 8.888800e+00
第一个数:8.8888,第二个数:9.9999
3.字符串模板
使用字符串模板十分简单,如下
from string import Template
c=Template("${a},${b}")
d=c.substitute(a="hello",b="world")
print("使用模板产生的字符:",d)
使用字符串模板的好处在于,模板中的 '${ 变量名 }" 相当于占位符,当变量非常多的时候,可以指定同名关键字参数,这可以有效避免出错。执行结果如下
使用模板产生的字符: hello,world
4.format格式化字符串
使用format格式化字符串是一种常见做法。具体操作如下
a="hello"
b="world"
c=123.666
print("输出三个变量:a={},b={},c={}".format(a,b,c))
print("输出三个变量:a={1},b={2},c={0}".format(a,b,c))
print("输出var_a变量:{var_a}".format(var_a=a))
print("输出var_a变量:{var_b:.3}".format(var_b=b))
print("输出var_c变量:{var_c:.2f}".format(var_c=c))
执行结果如下,在第4行使用大括号作为format函数的3个参数的占位符,大括号的个数需要和format函数的参数个数一致;在第5行,大括号中的数字就是format函数的参数索引,使用索引可以控制参数在字符串中的排列顺序。在第6行,在format函数中,给参数取名为var_a,那么就可以在字符串中通过参数名对参数进行引用;在第7行,“.3"表示字符串的长度,这里在输出时会截取"world"的前3个字符。尽管实际很少用,但是这种写法是可行的;在第8行,”.2f"表示变量将以两位浮点数的形式输出,对于多余的小数,将进行四舍五入。
输出三个变量:a=hello,b=world,c=123.666
输出三个变量:a=world,b=123.666,c=hello
输出var_a变量:hello
输出var_a变量:wor
输出var_c变量:123.67
这篇文章就到这里结束了,希望能给小伙伴们带来一些帮助,喜欢的小伙伴们也可以点点赞支持一下!
更多推荐
所有评论(0)