Python的内置函数input()和print()用于输入和输出数据。下面将讲述这两个函数的使用方法。
Python提供的input()函数从标准输入读入一行文本,默认的标准输入是键盘。input()函数的基本语法格式如下:
input([prompt])
其中,prompt是可选参数,用来显示用户输入的提示信息字符串。用户输入程序所需要的数据时,就会以字符串的形式返回。
【例2.3】测试键盘的输入(源代码\ch02\2.3.py)。
x= input("请输入最喜欢的水果:") print(x)
上述代码用于提示用户输入水果的名称,然后将名称以字符串的形式返回并保存在x变量中,以后可以随时调用这个变量。
当运行此句代码时,会立即显示提示信息“请输入最喜欢的水果:”,之后等待用户输入信息。当用户输入“葡萄”并按下Enter键时,程序就接收了用户的输入。最后调用x变量,就会显示变量所引用的对象——用户输入的水果名称。
测试结果如下所示。
请输入最喜欢的水果:葡萄 葡萄
从结果可以看出,添加提示用户输入信息是比较友好的,对于编程时所需要的友好界面非常有帮助。
用户输入的数据全部以字符串形式返回,如果需要输入数值,就必须进行类型转换。
print ()函数可以输出格式化的数据,与C/C++的printf()函数功能和格式相似。print()函数的基本语法格式如下:
print(value,…,sep=' ' ,end='\n') #此处只说明了部分参数
上述参数的含义如下:
(1)value是用户要输出的信息,后面的省略号表示可以有多个要输出的信息。
(2)sep用于设置多个要输出信息之间的分隔符,其默认的分隔符为一个空格。
(3)end是一个print()函数中所有要输出信息之后添加的符号,默认值为换行符。
【例2.4】测试处理结果的输出(源代码\ch02\2.4.py)。
print("牧童骑黄牛","歌声振林樾") #输出测试的内容 print("牧童骑黄牛","歌声振林樾",sep='*') #将默认分隔符修改为'*' print("牧童骑黄牛","歌声振林樾",end='>') #将默认的结束符修改为'>' print("牧童骑黄牛","歌声振林樾") #再次输出测试的内容
保存并运行程序,结果如下所示。这里调用了4次print()函数。其中,第1次为默认输出,第2次将默认分隔符修改为'*',第3次将默认的结束符修改为'>',第4次再次调用默认的输出:
牧童骑黄牛 歌声振林樾 牧童骑黄牛*歌声振林樾 牧童骑黄牛 歌声振林樾>牧童骑黄牛 歌声振林樾
从运行结果可以看出,第一行为默认输出方式,数据之间用空格分开,结束后添加了一个换行符;第二行输出的数据项之间以'*'分开;第三行输出结束后添加了一个'>',与第4条语句的输出放在了同一行中。
从Python 3开始,将不再支持print输出语句,例如print "Hello Python",解释器将会报错。
如果输出的内容既包括字符串,又包含变量值,就需要将变量值格式化处理。
例如:
x=100 print ("x=%d" % x)
运行结果如下所示。
x=100
这里要将字符串与变量之间以(%)符号隔开。
如果没有使用(%)符号将字符串与变量隔开,Python就会输出字符串的完整内容,而不会输出格式化字符串。例如以下代码:
x=100 print ("x=%d",x)
运行结果如下所示。
x=%d 100
【例2.5】实现不换行输出(源代码\ch02\2.5.py)。
a="春风又绿江南岸," b="明月何时照我还。" #换行输出 print( a ) print( b ) print('---------') # 不换行输出 print( a, end=" " ) print( b, end=" " ) print()
保存并运行程序,结果如下所示。
春风又绿江南岸, 明月何时照我还。 --------- 春风又绿江南岸, 明月何时照我还。
在本示例中,通过在变量末尾添加end="",可以实现不换行输出的效果。读者从结果可以看出换行和不换行的不同之处。