当前位置: 首页 > 科技观察

零基础学Python:一篇懂数字和字符串

时间:2023-03-22 12:54:28 科技观察

01Python3中数字的数字类型分为整数、浮点数、布尔、小数、复数。在用Python编写程序时,不需要声明变量的类型。变量由Python内置的基本数据类型管理,值与类型关联、类型转换等操作在程序后台实现。Python定义变量的方式和内部原理与其他高级语言有很大不同。在C或Java中,定义一个整型变量可以这样表示:inti=1;在Python中,定义整型变量的表达式更加简洁。i=1Python会根据变量的值自动判断变量的类型。程序员不需要关心变量的类型,只要知道创建的变量中存储的是一个数字即可。负责生命周期。更重要的是,C或Java只是创建一个普通的int类型的变量;而Python创建的是整数对象,Python会自动完成整数对象的创建,不再需要通过构造函数来创建。Python内部没有普通的类型,任何类型都是对象。如果C或Java需要修改变量i的值,重新赋值即可;并且Python不能修改对象i的值。例如:1#下面的两个i不是同一个object¥2i=1¥3print(id(i))¥4i=2¥5print(id(i))如果需要查看变量的类型,可以使用由Python类型类定义的类型。type是__builtin__模块的一个类,它可以返回变量的类型或创建一个新类型。__builtin__模块是Python的内联模块。内联模块不需要import语句,由Python解释器自动导入。稍后您会遇到更多内联模块的类和函数。以下代码返回各种变量的类型。1#Integer\2i=1\3print(type(i))\4#LongInteger\5l=999999999999999999990#Python将int转float时与操作系统数目有关\6printtype(l)\7#float点类型\8f=1.2\9print(type(f))\10#Boolean\11b=True\12print(type(b))【代码说明】第三行代码的输出结果:No.6行代码输出结果:9行代码输出结果:12行代码输出结果:使用Python进行科学计算也很方便,因为Python有内置的复数类型。Java、C#等高级语言不提供复数类型。1#complexnumbertype?2c=7+8j?3print(type(c))第三行代码的输出结果:注:复数type的写法同中数学,如果写成c=7+8i,Python不认识里面的“i”,会提示语法错误。02在Python中有3种表示字符串的方式——单引号、双引号和三引号。单引号和双引号的作用是一样的,不同的程序员可以根据自己的习惯使用单引号或者双引号。PHP程序员可能更习惯用单引号来表示字符串,而C和Java程序员则习惯用双引号来表示字符串。下面代码中单引号和双引号的使用是等价的。1#单引号和双引号的使用是等价的\2str="helloworld!"#定义字符串变量str并赋值\3print(str)\4str='helloworld!'\5print(str)【代码说明】没有。3行代码的输出结果:helloworld!第5行代码的输出结果:helloworld!三引号的用法是Python的一种特殊语法,三引号中可以输入单引号、双引号或换行符等字符。1#三引号的用法?2str='''hesay"helloworld!"'''?3print(str)【代码说明】第三行代码中的三引号有双引号,双引号也会输出.输出:他说“helloworld!”三重引号的另一个用途是制作文档字符串。Python中的每一个对象都有一个属性__doc__,用来描述对象的作用。1#三引号做成doc文档?2classHello:?3'''helloclass'''\4defprintHello():\5'''printhelloworld'''\6print("helloworld!")\7print(Hello.__doc__)\8print(Hello.printHello.__doc__)【代码说明】第二行代码定义了一个名为Hello的类。第3行是Hello类的描述,字符串将存储在该类的__doc__属性中。第4行定义了一个方法printHello()。第5行描述了printHello()并将字符串存储在函数的__doc__属性中。第6行代码输出结果:helloworld!第7行代码输出了Hello的__doc__属性的内容。输出结果:helloclass第八行代码输出printHello()的__doc__属性的内容。输出结果:如果printhelloworld要输出包含特殊字符(单引号、双引号等)的字符串,需要使用转义字符。Python中的转义符是“\”,与C、Java中的转义符相同。转义操作只需在特殊字符前加“\”即可。以下代码片段说明了特殊字符的转义用法。1#转义字符?2str='hesay:\'helloworld!\''?3print(str)【代码说明】代码第二行的单引号是一个特殊字符,需要在"之前加一个转义字符’”。第三行代码的输出结果:hesay:'helloworld!'使用双引号或三引号直接输出包含特殊字符的字符串,而不使用转义字符。1#直接输出特殊字符¥2str="hesay:'helloworld!'"¥3print(str)¥4str='''hesay:'helloworld!''''¥5print(str)【代码说明】第二行code双引号用来表示字符串变量str,所以Python可以识别双引号里面的单引号只是作为输出字符。第三行代码的输出:hesay:'helloworld!'第四行代码用三引号表示字符串变量str。请注意,最后一个单引号后有一个空格。这个空格是为了让Python识别三引号的左边。如果不留这个空格,4个单引号连在一起,Python解释器就不能正确识别三引号。提示如下错误:SyntaxError:EOLwhilescanningsingle-quotedstring第5行代码的输出结果:hesay:'helloworld!'注意:输出字符串包含单引号,使用双引号表示字符串。相反,当输出字符串中包含双引号时,可以使用单引号来表示字符串。作者简介:黄传禄,高级讲师,管理软件开发工程师,数据库系统工程师,信息系统管理工程师。10余年一线教学经验和高端培训经验,出版多部技术专着,获得多项软件著作权。本文节选自《零基础学Python》(第2版),经出版社授权发布。