首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Python-分支程序和字符串

题目有点乱,但这是MIT的书,地球上最高水平理工学院。他不会这么写在一起的,我们是根据书上的内容编排,先讲分支程序,再讲字符串的,所以这么写的。或者准确的说,其实是讲字符串的一小部分内容。我们开始讨论分支程序,看下图:

如果你看懂了以上内容,并自己会写,那就批评式的阅读下去吧。

首先,我们开始另一种形式的代码编写和运行。因为前面是用的交互式工具,直接将代码写在那里,立即会有运行结果出来。现在则不同,我们是点击解释器上(那个你输入代码的窗口)的file,再点击new file打开一个新的窗口后,将代码写入的,立即试一下。按照我写的,敲入代码,然后另存为一个带.py的文件,比如if.py, 保存,应该会自动保存在Python3里面,不是的话,自己找当时按装Python时的路径,或者干脆关机后从头再来。关机开机是修理电脑的不二法门。

这些代码写的就是分支程序,因为之前或者说如果我们写代码的话,当然是自上而下,自左往右写的,电脑也是这么执行的,因为,这是人类的习惯,是约定俗成的。可是,一小撮群众,比如古代的中国人,居然竖排自右向左读写,阿拉伯人民好像直接横排自右向左,十分怪异吧。他们也许正在吐槽我们十分之怪异,也说不定。

这里的分支语句,就叫作条件语句。一个(不是一行)条件语句有三部分组成:

一个测试,即对一个表达式求值,结果非True就是False. 否则不是条件语句的测试部分;

一个代码块(有时就是一条语句),在测试结果为True时执行;

一个可选的代码块(同上),在测试结果为False时执行。你能知道,为什么上面那个没写(可选)二字吗?一定要琢磨,我不解释。

上图中的代码,从if 开始,第一句就是一个测试,测试 x % 2 == 0; x % 2 是一个数x 除以2后取余数,如果余数是0,则这个表达式求值为True, 注意 == 两个等号,因为一个等号,已经用于赋值使用了。如果x是10,则表达式值为True,则系统执行第一个代码块 print ("even") 运行结果就是 even。 偶数。这个代码块只有一句代码,如果多行,就顺序排下来,注意都要统一缩进。python很少用括号,是用缩进等来表达代码的顺序的,这个务必注意,如果缩进不对,很可能出错。今后一定会体验到。还有冒号,初期要严格注意。写了冒号后,第二行会自动缩进。语法格式要多观察,多模仿,多练习。

如果测试结果为False,则运行结果为Odd. 为奇数。这个If分支程序结束后,我们还有另外的一行代码,这一行的英文意思是,已经完成上面条件语句了。

上图中,我先是写了x=10, 然后运行,按f5或者菜单上run里面的(run module)就运行了。运行后,出现一个新窗口,然后我重新写x = 9, 就是你现在看到的,也运行了,整体在第二张图中显示了运行结果。注意 restart分界线。

下面练习字符串,先照着图片练习,然后看解释:

这才发现没有行号,下一次我们会安装pycharm或什么的,我比较比较那个适合初学者。

请对照看解释:

第一个:不许有空格,但有了一个字符后的其他空格就没有问题了。

3 + 5 加号正常,但字符串之间加号就是连接的意思。Python里面的字符串包括单个字符,与C语言等很不同,要留意。字符串是用双引号或单引号括起来的字符,包括数字,比如‘3’;“55”都是字符串类型(str)不是整数类型。

3 * 5 没有问题,等于15, 但 5 * ‘a’ 就是5个a的字符串‘aaaaa’,当然‘a’*'b' 系统无法判断是什么,所以不成功。解释器居然给出了详细提示,这应该是新的功能,我以前没太发现这样的解释。

3

len()函数里面加上参数,可以给出参数的长度,比如上图中就给出5;而字符串后面的[ ]里面的数字就做下标,英语是index,就是索引,没有下的意思。就是里面的数字表明了前面字符串中的单个字符的位置,是从0开始数的,也许你有些诧异,为何从零开始,但想一想你短跑比赛时,是从0开始的,还是从1开始的,0到1究竟是谁替你跑的?

最后一个例子中这个 “:”符号和前后俩个数字,这样的操作叫做切片,现在不是重点,自己体会。

奥,对了,不要感觉报错的英文太难,如果英语好,就看最后一句,英语不好的话,先猜猜,看见的多了,就成了熟面孔。至于前面的那几行,是八股文,几乎都是一样的,说最近的调用中,那几行那里出了问题。很准确的翻译,我还没有搞定。有谁准确翻译的,请举手,这个作为你的家庭作业好不好?

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20190112G0CZJL00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券