![人工智能基础教程:Python篇(青少版)](https://wfqqreader-1252317822.image.myqcloud.com/cover/783/26846783/b_26846783.jpg)
1.8 输入与输出
本节将介绍一下输入与输出,这里只是介绍在PyCharm的运行结果界面中的输入与输出,有关于涉及文件部分的输入与输出会在后文中介绍。下面先看看输入与输出的流程。带有输入与输出的程序执行过程如图1.16所示。
![](https://epubservercos.yuewen.com/EFD799/15289821505523106/epubprivate/OEBPS/Images/aa0346.jpg?sign=1738959975-VD7Zt5akCTllPsIbPUbuRxlvG4pYgi0Q-0-bcbbf2362d5d3fdd4ccfa581a6624c22)
图1.16 带有输入与输出的程序执行过程
1.8.1 输出
本章程序1.1用一个print函数输出Hello world,在这里我们详细谈谈输出语句。不知道你有没有发现,print函数总是会以一个不可见的“新一行”字符(\n)结尾,因此重复调用print将会在相互独立的一行中分别打印。为了防止这一现象,Python中的print函数可以通过end指定除换行以外的其他结尾。例如,可以通过end指定以空白结尾:
![](https://epubservercos.yuewen.com/EFD799/15289821505523106/epubprivate/OEBPS/Images/aa0347.jpg?sign=1738959975-b7EEKClyVjbAlajF94uvS4IfrZQJkZhf-0-aa18a848fed41bcd8849334fd15f93bb)
输出:
![](https://epubservercos.yuewen.com/EFD799/15289821505523106/epubprivate/OEBPS/Images/aa0348.jpg?sign=1738959975-Sv2llUMAMUZuI5k7DnNLvU4ECxFZO6St-0-6d490ac61ceb06514fe331e1e87831f0)
1.8.2 输入
对应输出,Python也提供了一种输入机制,也就是input函数,它可以接收我们从键盘输入的内容,把值存入变量中。另外,input函数的参数可以设置为当用户进行输入之前要显示的信息,如input("please input some num.")这种形式。
一旦用户按下Enter键,表示输入完成并退出函数。
注意:
程序接收到输入的内容是字符型的。
下面使用一个程序来熟悉一下我们学过的一些语法。这是一个编程实现简单计算器的程序,程序接收两个操作数和一个操作符并将计算结果输出。
程序1.3 简单的计算器:
![](https://epubservercos.yuewen.com/EFD799/15289821505523106/epubprivate/OEBPS/Images/aa0349.jpg?sign=1738959975-FYRz9g8eXHbOAk51Iq9t9owQRd4nkHix-0-e6a106dbf3d17d475a6627d6b8450f6b)
输出:
![](https://epubservercos.yuewen.com/EFD799/15289821505523106/epubprivate/OEBPS/Images/aa0350.jpg?sign=1738959975-uYz9fQULlqy41brEF1xId2ysKtTUI71Z-0-62b6b95a2a18752948822f3bfb824cea)
分析:
首先,程序1.3仅仅用于演示,它是一个很不完善的程序,如果你的操作数输入不是数字的话程序将会崩溃。
程序前3行用于接收用户的输入,每次输入完成按Enter键结束输入,输出前3行为用户从键盘输入要运算的数值,输入的数值字体为斜体,如程序1.3中的输出结果所示。由于操作数是整型,而input函数对接收输入内容返回的是字符串类型,因此我们用一个int函数将其类型转换成整型。程序的5~8行使用了三元运算符来判断操作符并选出对应操作符的具体操作。
最后,注意第10行的输出语句,这就是我们上文中提到的使用format方法来从其他信息中构建字符串。在这个字符串中的{0}将会被format的第一个参数代替。若是有两个参数如何做呢?例如,在程序输出结果中我们要输出操作数x, y:
![](https://epubservercos.yuewen.com/EFD799/15289821505523106/epubprivate/OEBPS/Images/aa0351.jpg?sign=1738959975-z4X9Pp5owPl0G3BUcXSPV7RHj0Lstk3e-0-23e9c7a2c2e5b1d11c5a266cfc88ea36)
注意:
使用format方法明了而且不容易出错,但是一定记住Python是从0开始计数,即索引中的第一位是0,第二位是1,以此类推。
警告:
缩进(各行开头的空白区,用4个空格表示)在Python中非常重要,它用于确定语句的分组。放置在一起的语句必须拥有相同的缩进。每一组这样的语句被称为“块”。在本书的后文中会了解块这一概念的重要性。如程序1.3的前3行如果写成:
![](https://epubservercos.yuewen.com/EFD799/15289821505523106/epubprivate/OEBPS/Images/aa0352.jpg?sign=1738959975-nQQYIEOw786ECGVG10HHdgxJSuEMswOy-0-543dc95761eb1f6e2d55fe1e9aa9abb4)
这时程序会报错:
![](https://epubservercos.yuewen.com/EFD799/15289821505523106/epubprivate/OEBPS/Images/aa0353.jpg?sign=1738959975-8OP9wdnNcwdUMfwkXAvDzVeSvW6m0OjS-0-1f24929d7c16ae6217307ea1d6185dd1)
Python指出的错误信息告诉我们这个程序的语法是无效的。有关使用新块的情况后文会提到。如果我们使用PyCharm编写程序的话,它会自动处理缩进。