如何使用Python的交互式Shell以及进行基本的算术运算?
off999 2024-10-11 14:02 41 浏览 0 评论
1.1一些简单的数学知识
首先,我们将使用Python来解决-一些简单的数学问题。
交互式shell可以像计算器一样工作。在交互式shell的>>>提示符之后, 输入2+2,然后按下回车键(有些键盘上显示为RETURN键)。图1-1展示了这个数学问题在交互式shell中的样子,注意,它给出的响应是数字4。
这道数学题就是一个简单的编程指令。 加号(+)告诉计算机把数字2和2相加。计算机这么做了,并且在下一行中用数字4作为响应。表1-1列出了Python中其他可用的数学符号。
减号(-)是数字相减。乘号(*)是数字相乘。除号(/) 是数字相除。当以这种方式使用时,+、一、*和/叫做操作符( operator)。操作符告诉Python要对它们旁边的数字进行何种运算。
1.1.1整数和浮点数
整数( integer )就是诸如4、99或者0这样的完整的数。浮点数(简写为float )就是诸如3.5.42.1或者5.0这样的分数或小数。在Python中 ,数字5是整数,但是5.0是浮点数。
这些数字都称为值(value ) (稍后,我们将介绍数字以外的其他的值)。在刚才我们在shell中输入的数学问题中,两个2都是整数值。
1.1.2表达式
数学题2 + 2就是表达式( expression)的一个例子。如图1-2所示,表达式是由操作符(数学符号)所连接起来的值(数字)组成的,它会产生可供代码使用的一个新的值。
计算机可以在几秒钟之内解决数百万道这样的数学题。
尝试在交互式shell中输入一些这样的数学问题,每输入完一道题后按一下回车键。
>>> 2+2+2+2+2
10
>>> 8*6
48
>>> 10-5+6
11
>>>2+2
4这些表达式看上去都像是常规的数学公式,但是注意2+2的示例中的所有的空格。在Python中 ,在值和操作符之间可以添加任意多个空格。然而,当把指令输入到交互式shel中时,必须总是从一行的开头开始执行(即指令之前不能有空格)。
1.2 计算表达式
当计算机求解表达式10 + 5并且得到值15的时候,它就已经计算了这个表达式。计算一个表达式就是把表达式规约为一个数字,就像解答一道数学题而把问题简化成一个数字一样,这个单个的数字就是答案。表达式10+ 5和表达式10 + 3 + 2的计算结果都是15。
当Python计算一个表达式的时候,它就像你在做数学题的时候一样,按照顺序进行操作。有如下的几条规则:
●位于括号之中的表达式部分先计算;
●乘法和除法在加法和减法之前计算;
●从左向右进行计算。
表达式1 +2*3+ 4的计算结果是11,而不是13,因为先计算2*3。如果表达式是(1+2)*(3+4), 那么将会计算为21。因为(1+2)和(3+4)位于括号之中,它们会在乘法之前计算。
表达式可以是任意大小的,但它们总是会求解得到一个数字。即便单个值也可以是表达式:表达式15的计算结果就是值15。例如,表达式8*3/2+2+7-9,通过如下步骤,其计算结果是值12.0:
即便是计算机会执行所有这些步骤,我们在交互式shell中也看不到所有这些步骤。交互式shell只是把结果展示给我们。
>>> 8*3/2+2+7-9
12.0需要注意的是,除法操作符(/)的运算结果是一个浮点数,例如,24/2的结果是12.0。即便是只使用了一个浮点数的数学运算,其结果也是浮点数,所以12.0 +2的结果是14.0。
1.3 语法错误
如果在交互式shell中输入5+,将会得到如下的一条错误消息。
>>> 5+
SyntaxError: invalid syntax之所以会产生这个错误,是因为5+不是一个表达式。表达式通过操作符来连接值,因此加法操作符+期待在其前面和后边都有一个值。当漏掉了期待的值的时候,就会出现一条错误消息。
SyntaxError表示Python不理解这条指令,因为你的输入不正确。计算机编程并不只是告诉计算机要做什么,还要知道如何正确地向计算机传达指令。
但是,不要担心出错。错误并不会对计算机造成危害。只要在交互式shell中的下一个>>>提示符处。重新输入正确的指令即可。
1.4在变量中存储值
当表达式计算为一个值的时候,我们可以把这个值存储到变量中,以便在后面可以使用它。我们把变量当做是一个可以保存值的盒子。
一条赋值语句 ( assignment statement )会把一个值保存到一个变量中。输入变量的名称,后边跟着等号(=称为赋值操作符) , 然后是要存储到这个变量中的值。例如,在交互式shell中输入spam= 15:
>>> spam = 15
>>>这将把值15存储到spam变量的盒子中,如图1-3所示。
当按下回车键时,你不会看到任何响应。在Python中,如果没有出现错误,就表示成功地执行了指令。然后将会出现>>>提示符,你就可以输入下一条指令了。
和表达式不同,语句是不会计算为任何值的指令。正因为如此,在spam= 15之后,交互式shell的下一行中没有显示任何的值。如果你不清楚哪些指令是表达式,哪些指令是语句,那么请记住:表达式会得到一个值,而任何其他类型的指令都是一条语句。
变量保存的是值而不是表达式。例如,考虑一下语句spam= 10 + 5和spam= 10+ 7- 2中的表达式。它们的运算结果都是15。最终结果是相同的:两条赋值语句都把值15保存到了变量spam中。
一个好的变量名能够描述它所包含的数据。想象一下,你将要搬到一个新房子中,并且将你用来搬家的所有精子都贴上一个名为“东西 ( stuf )”的标签。你什么东西也找不到!在本书中,为变量而使用的变量名的例子是spam、eggs和bacon等。
第一次在赋值语句中使用一个变量的时候, Python将会创建该变量。要查看变量中的值 ,在交互式shell中输入该变量的名称:
>>> 2+2+2+2+2
10
>>> 8*6
48
>>> 10-5+6
11
>>>2+2
4表达式spam得到了变量spam中的值,即15。可以在表达式中使用变量。尝试在交互式shell中输入如下指令:
>>> spam = 15
>>> spam + 5
20我们已经把变量spam的值设置为15 ,所以输入spam+ 5就像是输入表达式15+5一样。下面是spam +5的运算步骤:
在赋值语句创建变量之前,不能使用该变量。否则,Python将会给出一个NameError错误,因为尚不存在该名称的变量。输错了变量名称也会得到这样一个错误 :
>>> spam = 15
>>> spma
Traceback (most recent call last):
File "<pyshe11#8>", line 1, in <module>
spma
NameError: name 'spma' is not defined出现这个错误,是因为虽然有spam变量,但是并没有名为spma的变量。
可以通过输入另一条赋值语句来修改变量中存储的值。 例如,尝试在交互式shell中输入如下语句:
>>> spam = 15
>>> spam + 5
20
>>> spam = 3
>>> spam + 5
8当第一次输入spam + 5时,表达式的计算结果是20,因为我们把15存储在spam中。然而,当输入spam= 3时,用值3替代(或覆盖)了值15,因为变量一次只能保存一个值。 现在,当我们输入spam+ 5时,表达式的计算结果是8,因为现在spam的值是3。覆盖的过程如图1-4所示。
我们甚至可以使用spam变量中的这个值,来给spam赋一个新的值 :
>>> spam = 15
>>>spam=spam+5
20赋值语句spam = spam + 5的意思是:“spam变量中的新值是, spam当前的值加上5”。通过在交互式shell中输入如下的语句,让spam中的值持续几次增加5 :
>>> spam = 15
>>>spam=spam+5
>>>spam=spam+5
>>>spam=spam+5
>>> spam
30在这个示例中,我们在第1条语句中给spam赋了一个15的值。在下一条语句中,我们用spam的值加上了5 ,并且将新的值spam+5赋值给了spam,这个表达式会计算为20。当这么做3次以后, spam的值最终为30。
到目前为止,我们只看到了一个变量,但是,在程序中,你可以根据需要创建任意多个变量。例如,让我们给名为eggs和bacon的两个变量分配不同的值,如下所示:
>>> bacon = 10
>>> eggs = 15现在,变量bacon中是10,变量eggs中是15。每个变量都有自己的盒子,其中拥有其自己的值,如图1-5所示。
尝试在交互式shell中输入spam = bacon + eggs,然后查看spam中的新值:
>>> 8*3/2+2+7-9
12.0现在,spam中的值是25。当把bacon和eggs相加时,就是把它们的值10和15相加。变量包含的是值而不是表达式。把值25赋给变量spam ,而不是把表达式bacon + eggs赋给变量。在spam = bacon + eggs赋值语句之后,对于bacon或者eggs的修改不会再影响到spam。
1.5 小结
在本章中,我们介绍了关于编写Python指令的基础知识。计算机不具备人的常识,并且只能理解特定的指令。因此,Python需要你准确地告诉它要做什么工作。
表达式是用操作符(如+或- )把值(如2或5 )组合起来。Python可以计算表达式,也就是把表达式规约为一个值。可以把值保存在变量中,以便程序可以记住它们,并且随后可以使用它们。
在Python中,有许多其他类型的操作符和值。在下一章中,我们将介绍更多的基础概念,并且编写第一个程序。我们还会介绍在表达式中使用文本。Python不仅能够处理数字,它的功能比计算器要强大得多。
本文摘自《Python游戏编程快速上手(第4版)》
Python是一种高级程序设计语言,因其简洁、易读及可扩展性日渐成为程序设计领域备受推崇的语言。
本书通过编写一个个小巧、有趣的游戏来教授Python编程,并且采用直接展示游戏的源代码并通过实例来解释编程的原理的方式。全书共21章, 12个游戏程序和示例贯穿其中,介绍了Python基础知识、数据类型、函数、流程控制、程序调试、流程图设计、字符串操作、列表和字典、笛卡尔坐标系、密码学基础、游戏AI模拟、动画图形、碰撞检测、声音和图像等方方面面的程序设计知识。本书可以帮助读者在轻松有趣的过程中,掌握Python游戏编程的基本技能。
本书适合不同年龄和层次的Python编程初学者阅读。
更多相关内容文章
相关推荐
- office2010家庭和学生版密钥
-
1.MicrosoftExcel2010家庭版的产品密钥是需要购买正版软件时提供的一串字符序列。2.这是为了确保用户使用正版软件,并且能够享受到软件的全部功能和服务。3.为了获得Micros...
- 16949认证费用是多少(16949审核员太难考了)
-
需要参加培训和考试,培训和考试是需要收费的,一般在300到500左右。内审员证书一般3年有效(因为标准是会更改的,更改标准则需要从新培训)大多数由企业组织人员参加培训。费用由企业承担,个人学这个的还是...
-
- mba是什么意思(长江商学院emba是什么意思)
-
工商管理硕士(MBA)是工商管理类硕士研究生学位,MBA是培养能够胜任工商企业和经济管理部门高层管理工作需要的务实型、复合型和应用型高层次管理人才,兼具理论与实践相结合,而其他硕士研究生只是培养科研型和教学型人才,偏向理论,不参与实践。MB...
-
2026-01-14 07:51 off999
- mdf文件游戏怎么安装(win10mdf文件游戏怎么安装)
-
朋友,应该还有一个只有几K的KuaiZipMount.mds文件吧?请确保这两个文件在同一个目录中然后用Daemontools等虚拟光驱软件,载入其中的mds文件之后进入虚拟光驱所在盘符执行...
- c盘莫名其妙的满了怎么办(c盘莫名其妙的满了怎么办windows)
-
当C盘突然满了,首先需要找到原因。可能是因为系统更新或安装了大量软件,也可能是因为存在大量垃圾文件或临时文件。可以通过清理垃圾文件、卸载无用软件、更改默认下载路径等方式来释放C盘空间。另外,可以考虑将...
- 电脑如何修改默认浏览器(电脑上怎样修改默认浏览器)
-
1、按下“windows+i”快捷键打开Windows设置,在设置界面选择系统。2、在系统里左边点击默认程序一项,右边会出现新的选项来。3、右边滚动鼠标滑轮下拉,点击web默认程序,点击选择想要默认打...
- 如何下载youtube视频(如何下载youtube视频2160p)
-
这个可以在应用宝中下载,就是在手机上下载一个应用宝,然后在搜索栏里输入软件名字,点击搜索,根据提示下载就可以了。将视频下载到电脑上有几种途径,如果是网络上的,可以下载的视频会设置有下载标记或按钮,点...
- 深度国际2025最新一期视频(今日关注最新一期的)
-
1、就算不快乐也不要皱眉,因为你永远不知道谁会爱上你的笑容。2、踏入社会的时候,不要什么话都跟别人讲,你说的是心里话,别人听的是笑话。3、该扔的就扔,该放弃就放弃,从今天起,余生做个俗人,以自己最好的...
- 华为最新系统版本(华为最新系统版本微信)
-
鸿蒙3.0。鸿蒙最新版本是3.0系统,相比2.0有着全面提升。尤其是在交互设计,多设备互联互通,流畅度性能,安全属性,用户关怀等方面升级幅度最大,而且升级并非是简单的更新换代,修复了不少鸿蒙2.0版本...
- 不知道原机主id密码如何激活
-
答案:如果忘记ID账号和密码,可以尝试以下方法激活手机:1.使用备用邮箱或手机号码:如果您已将备用邮箱或手机号码与您的ID账号绑定,可以使用备用邮箱或手机号码进行身份验证以激活手机。2.联系客服:...
- win10安装需要输入产品密钥(win10安装程序要输入产品密匙)
-
可按照如下方式解决:1.右击桌面左下角的“Windows”按钮,然后点击“命令提示符”项。2.接下来再输入以下命令:slmgr/ipkW269N-WFGWX-YVC9B-4J6C9-T83GX按回...
- 手机秒变电脑摄像头(手机秒变电脑摄像头怎么设置)
-
可以的我用过,但是要你手机支持啊国产的山寨机很多都支持这个功能:支持这个功能的手机摄像头有两种工作状态:手机摄像状态和USB连接状态,在手机设置里把手机的摄像头改为USB连接状态,直接插到电脑上就可以...
欢迎 你 发表评论:
- 一周热门
-
-
抖音上好看的小姐姐,Python给你都下载了
-
全网最简单易懂!495页Python漫画教程,高清PDF版免费下载
-
飞牛NAS部署TVGate Docker项目,实现内网一键转发、代理、jx
-
Python 3.14 的 UUIDv6/v7/v8 上新,别再用 uuid4 () 啦!
-
python入门到脱坑 输入与输出—str()函数
-
宝塔面板如何添加免费waf防火墙?(宝塔面板开启https)
-
Python三目运算基础与进阶_python三目运算符判断三个变量
-
(新版)Python 分布式爬虫与 JS 逆向进阶实战吾爱分享
-
失业程序员复习python笔记——条件与循环
-
系统u盘安装(win11系统u盘安装)
-
- 最近发表
- 标签列表
-
- python计时 (73)
- python安装路径 (56)
- python类型转换 (93)
- python进度条 (67)
- python吧 (67)
- python的for循环 (65)
- python格式化字符串 (61)
- python静态方法 (57)
- python列表切片 (59)
- python面向对象编程 (60)
- python 代码加密 (65)
- python串口编程 (77)
- python封装 (57)
- python写入txt (66)
- python读取文件夹下所有文件 (59)
- python操作mysql数据库 (66)
- python获取列表的长度 (64)
- python接口 (63)
- python调用函数 (57)
- python多态 (60)
- python匿名函数 (59)
- python打印九九乘法表 (65)
- python赋值 (62)
- python异常 (69)
- python元祖 (57)
