我们编写程序大多都是为了解决生活中的问题,因此要向计算机内输入数据,并通过程序将计算后的结果输出出来,供我们使用。

python提供了两个函数分别负责了输入与输出,分别是input()和print()函数。

输出

先看print()函数

这个函数是打印用的,它可以打印出括号里面的参数,如下面的value和...

print(value, ..., sep=' ', end='\n

这里面有很多参数,其中value和...,是需要打印的元素,sep是分隔符,end是结尾标志。

举个例子:

>>> a = 1 #定义a

>>> b = 2 #定义b

>>> print(a) #打印a

1

>>> print(a,b) #分别打印a和b

1 2

>>> c = '3' #定义c

>>> print(c) #打印c

3

>>> print(a,b,c) #分别打印a,b,c

1 2 3

我们可以看到,a和b都是整型,c是字符串型,打印a、b,和打印a、b、c的时候,中间是用逗号隔开的。在打印出的结果上可以看到,元素之间是用空格隔开的。而且元素的类型不同,有整型有字符串型。

为什么中间是用空格隔开,这是因为print函数的sep参数,当不指定的时候,默认是空格。使用print(a,b)的时候,没有指定sep,所以中间有空格,如果是print(a,b,sep = '+'),这时候指定sep为'+',打印出的结果就是1+2。如下面的例子:

>>> a = 1

>>> b = 2

>>> print(1,2,sep = '+')

1+2

>>> print(1,2,sep = '')

12

>>> print(1,2)

1 2

我们再来看end这个参数,当我们在程序中写入以下代码:

a = 1

b = 2

print(a)

print(b)

运行后,得到的结果应该是:

1

2

我们发现,这两次打印出来的结果并不在同一行,这是因为print函数中end参数默认为'\n',代表回车,也就是打印完后,在结尾打印'\n',进行换行。所以打印b的时候,会从第二行开始,同样,如果再继续打印,会从第三行开始。

如果我们不想换行,可以更改end参数为'',这样能在同一行打印了。

a = 1

b = 2

print(a,end = '')

print(b)

运行后得到的结果是:

12

关于更多print()函数的信息,可以使用help(print)进行查看。

输入

再看输入,python中负责输入的函数是input()。

input([prompt]) -> string

这个函数及其简单,只接受一个参数,可以传入参数也可以不传入,如果传入了这个参数,则会打印出来,作为提示。举个例子吧:

>>> a = input('请输入:')

请输入:123

>>> print(a)

123

>>> print(type(a))

我们可以看到,在执行input('请输入:')后,在屏幕上打印出了“请输入:”这几个字样,这几个字是我们传入的参数,在执行input的函数的时候,会优先打印出input里面的参数,作为提示。然后我们输入了123,这3个数字,然后按下回车。这时候,123三个数字作为一个字符串,赋给了a,接下来我们打印a和a的类型。看到了结果。

这就是input()函数的用法。调用input之后,会要求用户输入内容,并将其转换为字符串型。这就要求我们有时候在计算整型和浮点型时需要使用强制类型转换。