输入与输出
程序的核心在于与用户交互,而交互就分为输入和输出两部分。例如你想要打开掘金网站,那么点击浏览器地址栏就是一次输入,程序将焦点放到地址栏就是一次输出,你输入juejin.cn
并回车又是一次输入,浏览器显示网站又是一次输出。
我们现在学习的是非图形化编程,所有程序的交互都发生在命令行。命令行的特点是输入完全由键盘进行,与鼠标无关,而输出也都是以文本的形式展现在命令行,因此所有的输入与输出都可以用字符串(在计算机中我们称单个字母或符号等为字符,一连串文本为字符串)来表示。这种交互是最为直接、简单的,而且实际上也是最为常用的。只要你不是想要发布一款面向大众的软件,那么命令行交互通常是够用的。
语句
语句是程序的基本单位,Python执行的过程中会将代码拆分为一条条语句以此执行。通常一行代码为一条语句,特殊情况会出现多行代码为一条语句的情况,但是绝不可能出现一行代码多条语句的情况。
print函数
在Python中,我们使用print函数进行输出。例如
python
print('Hello, World')
这一条语句的效果就是输出Hello World
。
我们将其拆分为三个部分:print
、( )
、'Hello, World'
。首先print
就是函数名,这个函数的功能就是输出字符串到命令行。在函数名后要紧跟一对括号,括号里面的内容就是参数,这里就是'Hello, World'
。
这个参数又可以进一步拆分为两部分:' '
和Hello, World
。我们使用一对单引号或双引号来表示字符串,里面的代码就是字符串的内容。
把刚才的解释连起来就是,调用函数print
,并传递字符串Hello, World
作为参数。print
函数输出完毕后会自动换行(因此如果你执行两次,那么两次的输出会在相邻的两行中显示)。
实际上,print
函数可以接受不止一个参数,例如:
python
print('Hello', 'World')
这一条语句会输出Hello World
。这里print
接受了两个参数:'Hello'
和'World'
。调用函数时,我们可以用半角逗号隔开不同参数来实现同时传递多个参数的目的。当print
函数接受多个参数时,会依次输出每一个参数,并用一个空格将参数的输出隔开,最后再加上一个换行。
举一反三. 向print
函数传递三个参数,输出Hello my friend
。
输入
如果一个程序没有输入,那么其运行过程就完全由代码所决定,输出就是一成不变的,这样的程序通常是意义不大的。因此,输入在程序中也是非常必要的。
在Python中,我们也有一个函数用作输入,叫input
函数。例如
python
x = input('Please enter something: ')
print('You entered', x)
我们首先分析第一行。先忽略开头的x =
,我们直接来看input
函数。
举一反三. 类似上一节的分析,将第一行的input
函数拆分为三个部分。
容易理解,这里就是调用input
函数,并传递字符串Please enter something:
作为参数。input
函数的效果是在命令行输出参数的内容,并且等待用户输入并回车。运行代码,会发现得到如下输出:
plain
Please enter something: _
并且光标停在了_
处(输出并没有_
,这里为了便于标记光标位置)。此时输入任意文本并按回车键完成一次输入。
现在的问题是,在用户按下回车完成输入后,程序要如何获取用户的输入呢?这里就要用到函数的另一个概念:返回值。就像数学中的函数有自变量和因变量,你可以将函数的参数类比作自变量,而函数的返回值就是因变量。因此第一行代码的意思就是,调用input
函数,并将返回值赋给x
变量(关于变量的用法在之后的文章会详细的展开,这里读者直观地理解即可)。当然,input
函数的返回值自然就是用户所输入的内容了,这样我们就成功获取了用户的输入。
举一反三. 试分析第二行代码的作用,预测在用户输入Hello World
并回车后程序的输出。
虽然变量的概念还没有介绍,但是不难理解程序在向print
传递参数时x
被替换为了刚刚赋予的值,因此第二行的作用实际上就是把用户的输入原封不动的输出,当然在前面还加上了You entered
提示语。例如用户输入Hello World
:
plain
Please enter something: Hello World
You entered Hello World
本文复习
-
交互是什么
- 图形化程序的输入和输出是什么
- 命令行程序的输入和输出是什么
-
print函数的用法
- 字符串是什么
- 如何传递多个参数
-
input函数的用法
- 函数的返回值是什么
- 如何赋值以及使用变量