
本节将会介绍python中的输入和输出操作,基础部分主要就是介绍input()和print()的用法,print()我们在之前的学习中已经多次使用了,并不陌生,这一节再详细的梳理一下print()中可以支持的各种方法。另外一大内容是文件的读写和OS命令的应用,这部分我们放在后续的文章中再讲解。
【读取键盘输入input()】
input()内置函数从标准输入读入一行文本,默认的标准输入是键盘,输入的内容被存放到一个变量里。
input(str)方法的参数是输入的提示信息,用于提示用户当前需要输入的是何种内容。
str1 = input("请任意输入内容:")
print("输入的内容是:{0}".format(str1))


input()方法的用法并不复杂,当解释器遇到input()方法时,会等待从控制台输入内容,输入内容后回车即提交,程序继续运行。需要注意的是,input()方法接收之后返回的是string类型的变量,如果我们的目标是number类型,那么还需要对其进行类型的转换,否则不能与其他的number类型变量进行操作。

str1 = input("请任意一个数字:")
print(2 + int(str1))

【输出】
通过print()方法将对象打印到控制台上,这个我们都很熟悉了。如果你希望输出的形式更加多样,可以使用str.format()函数来格式化输出值。如果你希望将输出的值转成字符串,可以使用repr()或str()函数来实现。str()函数返回一个用户易读的表达形式;repr()产生一个解释器易读的表达形式。我个人更倾向于使用str.format()函数,占位符方式的输出已经能满足绝大多数的场景。
我们先举例print()函数中需要注意的两点:
(1)print()函数可以接受多个字符串的参数,输出的时候默认会把所有的参数组合在一起进行输出。
(2)print()函数的输出默认是会换行的,如果不想换行,需要在末尾加上参数end="",让其在输出后不换行。
a = 'hello china'
b = 'I love you'print(a, b)print(a, end="")
print(b)

从输出结果上可以看到,当print()函数处理多个参数组合时,两个参数之间默认会输出空格,这样也符合英文字符的格式;而指定不换行之后,并不会自动的空格,之后的输出结果会紧接着末尾继续输出。
继续说str.format()函数,它的基本使用方法如下:
print('{}:"{}!"'.format('你好', '我想睡觉'))

括号及其里面的字符(即占位符)会被format()函数中的参数替换,在括号中的数字用于指向传入对象在format()中的位置,如下所示:
print('{1}:"{0}!"'.format('你好', '我想睡觉'))

除了使用数字标识占位符的顺序外,也可以使用名称的方式指向传入对象在format()中的位置,这类似于字典的键值对方式,如下所示:
print('{sentence}:"{flag}!"'.format(sentence='你好', flag='我想睡觉'))

每一个占位符后,还可以使用“:”冒号指定更加精细的格式,如对Number类型的变量指定保留的小数点位数,如下所示:
import math
print('常量 PI 的值近似为:{}。'.format(math.pi))
print('常量 PI 的值近似为:{0:.3f}。'.format(math.pi))

在“:”冒号后传入一个整数,可以保证该输出域内至少有这么多个字符宽度,类似于制表符或表格对齐效果,如下所示:
dict1 = {1:"big", 2:"tall", 3:"small"}
for key in dict1.keys():print('{0:10} ==> {1:10d}'.format(dict1[key], key))

本节内容比较简短,也很简单。俗话说,好记性不如烂笔头,在学习编程的过程中,敲代码不如烂笔头,小伙伴们一定要动手敲一敲代码,将理论应用于实践,事半功倍,受益良多。
【python入门系列】
杨地瓜:【Python基础(七)】逻辑控制zhuanlan.zhihu.com






【信息系统项目管理师考试分享】
杨地瓜:【项目管理(十一)】软考-信息系统项目管理师-论文总结(II)zhuanlan.zhihu.com





