【原创笔记3】Python从0学起——Starting From 0 Learning Python(On the third day)
本帖最后由 ShadowY 于 2017-1-11 17:54 编辑On The Third Day(第三天)
2016Year 11Mouth 29Day Tuesday
Hello everybody!(大家好)
Today is 我在书上正式学习 on the third day of Python(Python的第三天)
2.3 字符串
大多数程序都定义并收集某种数据,然后使它们来做些有意义的事情。鉴于此,对数据进行分类大有裨益。我们将介绍第一种数据类型是字符串。字符串虽然看似简单,但能够以很多不同的方式使用它们。字符串就是一系列字符。在 Python 中,用引号扩起的都是字符串,其中的引号可以是单引号,也可以是双引号,如下所示:
http://img.blog.csdn.net/20161128181737786
这种灵活性让你能够在字符串中包含引号和撇号:
http://img.blog.csdn.net/20161128182445130
下面来看一些使用字符串的方式。
2.3.1 使用方法修改字符串的大小写
对于字符串,可执行的最简单操作之一是修改其中的单词的大小写。
请看下面的代码,并尝试判断其作用: name.py
http://img.blog.csdn.net/20161128192248122
将这个文件保存为 name.py ,再运行它。你将看到如下输出:
http://img.blog.csdn.net/20161128192713424
在这个示例中,小写的字符串 "ada lovelace" 存储到了变量 name 中。在 print() 语句中,方法 title() 出现在这个变量的后面。方法是 Python 可对数据执行的操作。在 name.title() 中,name 后面的句点(.)让 Python 对变量 name 执行方法 title() 指定的操作。每个方法后面都跟着一对括号,这是因为方法通常需要额外的信息来完成其工作。这种信息是在括号内提供的。函数 title() 不需要额外的信息,因此它后面的括号是空的。 title() 以首字母大写的方式显示每个单词,即将每个单词的首字母都改为大写。这很有用,因为你经常需要将名字视为信息。Example(例如):你可能希望程序将值 Ada 、 ADA and ada 视为同一个名字,并将它们都显示为 Ada 。 还有其他几个很有用的大小写处理方法。Example(例如):要将字符串改为全部大写或全部小写,可以像下面这样做:
http://img.blog.csdn.net/20161128193810845
这些代码的输出如下:
http://img.blog.csdn.net/20161128193905305
存储数据时,方法 lower() 很有用。很多时候,你无法依靠用户来提供正确的大小写,因此需要将字符串先转换成小写,再存储它们。以后需要显示这些信息时,再将其转换为最合适的大小写方式。
2.3.2 合并(拼接)字符串
在很多情况下,都需要合并字符串。Example(例如):你可能想将姓和名存储在不同的变量中,等要显示姓名时再将它们合而为一:
http://img.blog.csdn.net/20161128195120832
Python 使用加号(+)来合并字符串。在这个示例中,我们使用 + 来合并 first_name 、空格 and last_name ,以得到完整的姓名(见上图第5行),其结果如下
http://img.blog.csdn.net/20161128195329842
这种合并字符串的方法称为拼接。通过拼接,可使用存储在变量中的信息来创建完整的消息。下面来看一个 Example (例子):
http://img.blog.csdn.net/20161128201046905
在这里,一个问候用户的句子中使用了全名(见上图),并使用了方法 title() 来将姓名设置为合适的格式。这些代码显示一条格式良好的简单问候语(见下图):
http://img.blog.csdn.net/20161128201111804
你可以使用拼接来创建消息,再把整条消息都存储在一个变量中:
http://img.blog.csdn.net/20161128201223726
上述代码也显示消息 “Hello,Ada Lovelace!” ,但将这条信息存储在了一个变量中(见上图第7行),这让最后的 print 语句简单的多(见上图第8行)。
2.3.3 使用制表符或换行符来添加空白
在编程中,空白泛指任何非打印字符,如空格、制表符和换行符。你可使用空白来组织输出,以使其更易读。要在字符串中添加制表符,可使用字符组合 \t ,如下图箭头所指代码所示:
http://img.blog.csdn.net/20161128202015854
要在字符串中添加换行符,可使用字符组合 \n ,如下图代码所示
http://img.blog.csdn.net/20161128202234792
还可在同一个字符串中同时包含制表符和换行符。字符串 “\n\t” 让 Python 换到下一行,并在下一行开头添加一个制表符。下面的示例演示了如何使用一个单行字符串来生成四行输出:
http://img.blog.csdn.net/20161128202520637
在接下来的两章中,你将使用为数不多的几行代码来生成很多行输出,届时制表符和换行符将提供极大的帮助。
2.3.4 删除空白
在程序中,额外的空白可能令人迷惑。对程序员来说, 'python' and 'python ' 看起来几乎没什么两样,但对程序来说,它们却是两个不同的字符串。 Python 能够发现 'python ' 中额外的空白,并认为它是有意义的———除非你告诉它不是这样的。空白很重要,因为你经常需要比较两个字符串是否相同。 Example(例如):一个重要的示例是,在用户登录网站时检查其用户名。但在一些简单得多的情形下,额外的空格也可能令人迷惑。所幸在 Python 中,删除用户输入的数据中的多余的空白易如反掌。Python 能够找出字符串开头和末尾多余的空白。要确保字符串末尾没有空白,
可使用方法 rstrip()。
http://img.blog.csdn.net/20161129085932365
存储在变量 favorite_language 中的字符串末尾包含多余的空白(见上图第一行代码)。你在终端会话中向 Python 询问这个变量的值时,可看到末尾的空格(见上图第二行代码)。对变量 favorite_language 调用方法 rstrip() 后(见上图第四行代码),这格多余的空格被删除了。然而,这种删除只是暂时的,接下来再次询问 favorite_language 的值时,你会发现这个字符串与输入时一样,依然包含多余的空白(见上图第六行代码)。 要永久删除这个字符串中的空白,必须将删除操作的结果存回到变量中:
http://img.blog.csdn.net/20161129090552816
为删除这个字符串中的空白,你需要将其末尾的空白剔除,再将结果存回到原来的变量中(见上图第二行代码)。在编程中,经常需要修改变量的值,再将新值存回到原来的变量中。这就是变量的值可能随程序的运行或用户输入数据而发生变化的原因。你还可以剔除字符串开头的空白,或同时剔除字符串两端的空白。为此,可分别使用方法 lstrip() and strip():
http://img.blog.csdn.net/20161129093241642
在这个示例中,我们首先创建了一个开头和末尾都有空白的字符串(见上图第一行代码)。接下来,我们分别删除末尾(见上图第二行代码)、开头(见上图第四行代码) and 两端(见上图第六行代码)的空格。尝试使用这些剥除函数有助你熟悉字符串操作。在实际程序中,这些剥除函数最常用在用户输入前对其进行清理。
2.3.5 使用字符串时避免语法错误
语法错误是一种时不时会遇到的错误。程序中包含非法的 Python 代码时,就会导致语法错误。Example(例如),在用单引号括起的字符串中,如果包含撇号,就会导致错误。这是因为这会导致 Python 将第一个单引号和撇号之间的内容视为一个字符串,进而余下的文本视为 Python 代码,从而引发错误。
下面演示了如何正确地使用单引号和双引号。请将该程序保存为 apostrophe.py ,再运行它:
apostrophe.py
http://img.blog.csdn.net/20161129095231338
撇号位于两个双引号直接,因此 Python 解释器能够正确地理解这个字符串:
http://img.blog.csdn.net/20161129094621226
然而,如果你使用单引号, Python 将无法正确地确定字符串的结束位置:
http://img.blog.csdn.net/20161129095427736
而你将看到如下输出:
http://img.blog.csdn.net/20161129095535035
从上述输出可知,错误发生在第二个单引号后面(见上图第二行提示)。这种语法错误指明,在解释器看来,其中的有些内容不是有效的 Python 代码。错误的来源多种多样,这里指出一些常见的,学习编写 Python 代码时,你可能会经常遇到语法错误。语法错误也是最不具体的错误类型,因此可能难以找出并修复。受困于非常棘手的错误时,请参阅第一章提供的建议。
注意: 编写程序时,编辑器的语法突出功能可帮助你快速找出某些语法错误。看到 Python 代码以普通句子的颜色显示,或者普通句子以 Python 代码的颜色显示,就可能意味着文件中存在引号不匹配的情况。
2.3.6 Python 2 中的 print 语句
在 Python 2 中, print 语句的语法稍有不同。 在 Python 2 中,无需将要打印的内容放在括号内。从技术上说, Python 3 中的 print 是一个函数,因此括号是必不可少。有些 Python 2 print 语句也包含括号,但其行为与 Python 3 中稍有不同。简单地说,在 Python 2 代码中,有些 print 语句包含括号,有些不包含。
动手试一试
在做下面的练习时,都编写一个独立的程序,并将其保存为名称类似于 name_cases.py 的文件。如果遇到了困难,请休息一会儿或参阅第一章提供的建议。
2-3 个性化消息:
将用户的名字存到一个变量中,并向该用户显示一条消息。显示的消息应非常简单,如“Hello Eric,would you like to learn some Python today?”。
2-4 调整名字的大小写:
将一个人名存储到一个变量中,再以小写、大写 and 首字母大写的方式显示这个人名。
2-5 名言:
找一句你钦佩的名人说的名言:将这个名人的姓名和他的名字打印出来。输出应类似于下面这样(包括引号): Albert Einstein once said,"A person who never made a mistake never tried anything new."
2-6 名言2:
重复练习2-5,但将名人的名字存储子啊变量 famous_person 中,再创建要显示的消息,并将其存储在变量 message 中,然后打印出这条消息。
2-7 剔除人名中的空白:
存储一个人名,并在其开头和末尾都包含一些空白字符。务必至少使用字符组合 "\t" and "\n" 各一次。 打印这个人名,以显示其开头和末尾的空白。然后,分别使用剔除函数 lstrip() 、 rstrip() and strip() 对人名进行处理,并将结果打印出来。
下面是我做的动手试一试的练习答案、如果有需要的朋友可以下载看看,如果我做的有错的地方请指点!谢谢!
**** Hidden Message *****
如果链接失效请联系我!
版权声明:本文为博主原创文章,未经博主允许不得转载。
觉得好的朋友给评分支持下啦!多点动力!
不错哦 呵呵 看看啊
资源共享1 发表于 2016-11-29 14:31
http://www.52pojie.cn/thread-557631-1-1.html
那不是上一贴……那是另外的帖子,那个视频要用专门的播放器播放,帖子里面有你看看 谢谢。。。。。。?。。。。 给力啊,大胸弟 好东西,谢谢分享 觉得好的朋友给评分支持下啦!多点动力! 学习学习~~ @资源共享1
请问我上贴哪里有广告哪里有视频??? 好东西,学习下