python应用代码(Python编程从入门到实践-连载1(变量和简单数据类型))python初学 / python在响应式编程中的实践...

wufei123 发布于 2024-06-05 阅读(12)

第二章 变量和简单数据类型2.2.0 变量我们添加了一个名为message的变量每个变量都存储了一个值——与变量相关联的信息在这里,存储的值为文本“Hello Python world!” message = "Hello Python world!"。

print(message)运行结果:Hello Python world! 添加变量导致Python解释器需要做更多工作处理第1行代码时,它将文本“Hello Pythonworld!”与变量message关联起来;而处理第2行代码时,它将与变量message关联的值打印到屏幕。

2.2.1 变量的命名和使用在Python中使用变量时,需要遵守一些规则和指南违反这些规则将引发错误,而指南旨在让你编写的代码更容易阅读和理解请务必牢记下述有关变量的规则 变量名只能包含字母、数字和下划线。

变量名可以字母或下划线打头,但不能以数字打头,例如,可将变量命名为message_1,但不能将其命名为1_message 变量名不能包含空格,但可使用下划线来分隔其中的单词例如,变量名greeting_message可行,但变量名greeting message会引发错误。

 不要将Python关键字和函数名用作变量名,即不要使用Python保留用于特殊用途的单词,如print 变量名应既简短又具有描述性例如, name比n好, student_name比s_n好, name_length比length_of_persons_name好。

 慎用小写字母l和大写字母O,因为它们可能被人错看成数字1和0要创建良好的变量名,需要经过一定的实践,在程序复杂而有趣时尤其如此随着你编写的程序越来越多,并开始阅读别人编写的代码,将越来越善于创建有意义的变量名。

注意 就目前而言,应使用小写的Python变量名。在变量名中使用大写字母虽然不会导致错误,但避免使用大写字母是个不错的主意。 2.2.2 使用变量时避免命名错误

程序存在错误时, Python解释器将竭尽所能地帮助你找出问题所在程序无法成功地运行时,解释器会提供一个traceback traceback是一条记录,指出了解释器尝试运行代码时,在什么地方陷入了困境。

下面是你不小心错误地拼写了变量名时, Python解释器提供的traceback:

解释器指出,文件hello_world.py的第2行存在错误(见1);它列出了这行代码,旨在帮助你快速找出错误(见2);它还指出了它发现的是什么样的错误(见3)在这里,解释器发现了一个名称错误,并指出打印的变量mesage未定义: Python无法识别你提供的变量名。

名称错误通常意味着两种情况:要么是使用变量前忘记了给它赋值,要么是输入变量名时拼写不正确在这个示例中,第2行的变量名message中遗漏了字母s Python解释器不会对代码做拼写检查,但要求变量名的拼写一致。

例如,如果在代码的另一个地方也将message错误地拼写成了mesage,结果将如何呢?

在这种情况下,程序将成功地运行:

因此,创建变量名和编写代码时,你无需考虑英语中的拼写和语法规则 2.3 字符串 字符串就是一系列字符。在Python中,用引号括起的都是字符串,其中的引号可以是单引号,也可以是双引号,如下所示:

这种灵活性让你能够在字符串中包含引号和撇号:

2.3.1 使用方法修改字符串的大小写请看下面的代码,并尝试判断其作用:

你将看到如下输出:

在这个示例中,小写的字符串"ada lovelace"存储到了变量name中在print()语句中,方法title()出现在这个变量的后面 方法是Python可对数据执行的操作在name.title()中, name后面的句点( .)让Python对变量name执行方法title()指定的操作。

每个方法后面都跟着一对括号,这是因为方法通常需要额外的信息来完成其工作这种信息是在括号内提供的函数title()不需要额外的信息,因此它后面的括号是空的title()以首字母大写的方式显示每个单词,即将每个单词的首字母都改为大写。

这很有用,因为你经常需要将名字视为信息例如,你可能希望程序将值Ada、 ADA和ada视为同一个名字,并将它们都显示为Ada如:name = "Ada Lovelace" name.upper() :将字符串改为全部大写 。

name.lower() :将字符串改为全部小写 输入如下:

2.3.2 合并(拼接)字符串 Python使用加号( +)来合并字符串 :first_name = "ada"last_name = "lovelace" full_name = first_name + " " + last_name

print(full_name) 输出为:ada lovelace 也可以使用拼接来创建消息,再把整条消息都存储在一个变量中:

上述代码也显示消息“Hello, Ada Lovelace!”,但将这条消息存储在了一个变量中(见1),这让最后的print语句简单得多(见2) 2.3.3 使用制表符或换行符来添加空白 要在字符串中添加制表符,可使用字符组合\t。

,如下述代码的处所示:

要在字符串中添加换行符,可使用字符组合\n:

还可在同一个字符串中同时包含制表符和换行符。字符串"\n\t"让Python换到下一行,并在下一行开头添加一个制表符。

注意:制表符/t和换行符/n的区别:换行符的作用是让光标跳到下一行的起始位置,而制表符则是跳到下一个制表的位置。

2.3.4 删除空白 对程序员来说, python和python 看起来几乎没什么两样,但对程序来说,它们却是两个不同的字符串 Python能够找出字符串开头和末尾多余的空白要确保字符串末尾没有空白,可使用方法rstrip()。

存储该变量favorite_language中的字符串末尾包含多余的空白(见1)在终端会话中向Python询问这个变量的值时,可看到末尾的空格(见2)对变量favorite_language调用方法rstrip()后(见3),这个多余的空格被删除了。

然而,这种删除只是暂时的,接下来再次询问变量和简单数据类型favorite_language的值时,你会发现这个字符串与输入时一样,依然包含多余的空白(见4) 要永久删除这个字符串中的空白,必须将删除操作的结果存回到变量中:

剔除字符串开头的空白 :调用 .lstrip() 方法剔除字符串末尾的空白 :.调用 .rstrip() 方法剔除字符串末尾的空白 :调用 .strip() 方法

2.3.5 使用字符串时避免语法错误在用单引号括起的字符串中,如果包含撇号,就将导致错误 ,这是因为这会导致Python将第一个单引号和撇号之间的内容视为一个字符串,进而将余下的文本视为Python代码,从而引发

错误。

撇号位于两个双引号之间,因此Python解释器能够正确地理解这个字符串:

然而,如果你使用单引号, Python将无法正确地确定字符串的结束位置:

而你将看到如下输出:

2.4 数字 2.4.1 整数 在Python中,可对整数执行加( +)减( -)乘( *)除( /)运算。

Python使用两个乘号表示乘方运算:

2.4.2 浮点数 Python将带小数点的数字都称为浮点数 大多数编程语言都使用了这个术语,它指出了这样一个事实:小数点可出现在数字的任何位置 从很大程度上说,使用浮点数时都无需考虑其行为你只需输入要使用的数字, Python通常。

都会按你期望的方式处理它们:

但需要注意的是,结果包含的小数位数可能是不确定的:

2.4.3 使用函数 str()避免类型错误 你经常需要在消息中使用变量的值例如,假设你要祝人生日快乐,可能会编写类似于下面的代码:birthday.pyage = 23message = "Happy " + age + "rd Birthday!"。

print(message)你可能认为,上述代码会打印一条简单的生日祝福语: Happy 23rd birthday!。但如果你运行这些代码,将发现它们会引发错误:

这是一个类型错误,意味着Python无法识别你使用的信息在这个示例中, Python发现你使用了一个值为整数( int)的变量,但它不知道该如何解读这个值(见1) Python知道,这个变量表示的可能是数值23,也可能是字符2和3。

像上面这样在字符串中使用整数时,需要显式地指出你希望Python将这个整数用作字符串。为此,可调用函数str(),它让Python将非字符串值表示为字符串:

这样, Python就知道你要将数值23转换为字符串,进而在生日祝福消息中显示字符2和3。经过上述处理后,将显示你期望的消息,而不会引发错误:

2.5 注释 在Python中,注释用井号( #)标识。井号后面的内容都会被Python解释器忽略,如下所示

2.5.2 该编写什么样的注释 编写注释的主要目的是阐述代码要做什么,以及是如何做的在开发项目期间,你对各个部分如何协同工作了如指掌,但过段时间后,有些细节你可能不记得了当然,你总是可以通过研究代码来确定各个部分的工作原理,但通过编写注释,以清晰的自然语言对解决方案进行概述,。

可节省很多时间。

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

河南中青旅行社综合资讯 奇遇综合资讯 盛世蓟州综合资讯 综合资讯 游戏百科综合资讯 新闻89397