在接下来的例子中,入输和输出将通过是不是有示提符(>>>和...)来行进辨别。要重做示例,当示提符涌现后,你入输有所的容内都必须在示提前面。是凡不以示提符开始的行都是从解释器输出的容内。如果一行只有一个第二示提符本身,意味着你必须入输一个空行,这是用来束结一个多行令命。

    这个手册面里含包多许例子,还有注释。注释在Python面里以#字符开始,直到本行束结。注释可以涌在现一行的开始处,或者跟在空格和代码前面,不在字符串字面量值面里。字符串字面量值面里的#字符就是一个#字符。因为注释使代码更加清晰,其实不被Python解释,当你重做这些示例时可以省略它们。

    一些示例:

    

python 返回字典中某个值的索引 python返回字符串索引_Python

    

3.1 应用Python作为一个盘算器

    让我们实验一些简略的Python令命。启动解释器并等待主示提符(>>>)。

    

3.1.1 数字

    解释器就像一个盘算器,你可以入输一个表达式,它会盘算出值。表达式法语较比直白,操纵符+ - * /和其它大多数语言中的一样。括号可以用来组分。例如:

    

python 返回字典中某个值的索引 python返回字符串索引_ico_02

    意注:你可能看到的并非这个结果。浮点数结果在不同的器机上可能不同。稍后我们将会分析更多关于控制浮点数输出表现的容内。

    为了现实整数想除,弃丢小数分部,取得整数结果,应用另一个操纵符//:

    

python 返回字典中某个值的索引 python返回字符串索引_ico_03

    等号(=)是用来把一个值赋给一个变量,然后,在下一个示提符之前没有结果表现:

    

python 返回字典中某个值的索引 python返回字符串索引_python 返回字典中某个值的索引_04

    一个值可以同时赋给多个变量:

    

python 返回字典中某个值的索引 python返回字符串索引_ico_05

    变量在应用前必须定义(赋给一个值),否则错出:

    

python 返回字典中某个值的索引 python返回字符串索引_ico_06

    操纵符完整支撑浮点运算,当混合型类的操纵数同时涌现会把整型转化为浮点型:

    

python 返回字典中某个值的索引 python返回字符串索引_字符串_07

    单数一样被支撑,虚部带一个缀后j或J,带有一个非零实部的单数表示为(real+imagj),或者被建创为complex(real,imag)函数。

    

python 返回字典中某个值的索引 python返回字符串索引_Python_08

    单数是总被表示为两个浮点数,实部和虚部,从单数z中抽出这两分部应用z.real和z.imag。

    

python 返回字典中某个值的索引 python返回字符串索引_字符串索引_09

    浮点型和整型的转换函数对于单数其实不实用,把一个单数转换为一个实数并非一个确正的做法。应用abs(z)取得它的数量值或z.real取得它的实部:

    

python 返回字典中某个值的索引 python返回字符串索引_字符串索引_10

    在交互式模,最后一个打印的表达式的值将被赋给_(下划线)。这意味着当你把Python用作面桌盘算器时,在某种程度上使得续继盘算变得更加易容,例如:

    

python 返回字典中某个值的索引 python返回字符串索引_字符串索引_11

    这个变量应该被作当读只的,不要给它式显值赋,你可以建创一个同名的地本变量遮住建内的变量和其魔力行为。

    

3.1.2 字符串

    除了数字外,Python也可以操纵字符串,有几种表示式方。可以被单引号或双引号括住:

    

python 返回字典中某个值的索引 python返回字符串索引_字符串索引_12

    解释器以和入输一样的式方打印出字符串操纵的结果,在引号面里,包含引号和其它趣有的被反斜线义转的字符,来表现确精的值。如果一个字符串面里含包单引号但不含包双引号,那这个字符串就用双引号包含,相反就用单引号来包含。print()函数为这些入输字符串发生一个更加可读的输出结果。

    字符串字面量值可以应用几种式方来跨横多行。续继行可以被应用,行在的末端加一个反斜线来指示下一行在逻辑上是这一行的续继:

    

python 返回字典中某个值的索引 python返回字符串索引_字符串索引_13

    意注,新行仍然需要被嵌入到字符串中,应用\n,行在末反斜线前面的新行将被弃丢(敲回车时发生的换行符)。示例输出一下容内:

    

python 返回字典中某个值的索引 python返回字符串索引_ico_14

    或者字符串也可以被一对匹配的三个引号围包,"""或'''(三个双引号或单引号),行束结符不需要义转,但是它们会被含包在字符串中。所以面下示例应用一个义转来防止一个不希望的初始空白行。

    

python 返回字典中某个值的索引 python返回字符串索引_Python_15

    发生一下输出:

    

python 返回字典中某个值的索引 python返回字符串索引_字符串索引_16

    如果我们把字符串字面量值作为“原始”字符串,\n将不再被转化为新行,行末的反斜线,换行符都将作为数据被含包在字符串中。因此,示例:

    

python 返回字典中某个值的索引 python返回字符串索引_python 返回字典中某个值的索引_17

    将打印出:

    

python 返回字典中某个值的索引 python返回字符串索引_字符串_18

    字符串可以应用+来接连,*来重复:

    

python 返回字典中某个值的索引 python返回字符串索引_字符串索引_19

    两个相邻的字符串字面量值将主动被接连;面上示例中的第一行也可以被写成 word = 'Help' 'A';只有在两个字面量时才起作用,其它意任的字符串表达式都不行:

    

python 返回字典中某个值的索引 python返回字符串索引_python 返回字典中某个值的索引_20

    字符串可以通过下标行进索引,第一个字符的下标是0。没有独自的字符型类,一个字符就是长度为一的字符串。就像在符图编程语言中,子字符串可以通过片切的标法记来指定,被冒号分割的两个索引。

    

python 返回字典中某个值的索引 python返回字符串索引_字符串_21

    片切索引有具有效的默许值,第一个索引被疏忽时默许为0,第二个索引被疏忽时默许是字符串的长度。

    

python 返回字典中某个值的索引 python返回字符串索引_字符串_22

    Python字符串不能被转变,向一个指定索引位置值赋会致导误错:

    

python 返回字典中某个值的索引 python返回字符串索引_ico_23

    然而,应用结合的容建内创一个字符串是简略和有效的:

    

python 返回字典中某个值的索引 python返回字符串索引_Python_24

    这是一个有效的变不的片切操纵,s[:i] + s[i:] 即是 s。

    

python 返回字典中某个值的索引 python返回字符串索引_字符串索引_25

    不正常的片切索引可以被很好的处置,一个索引如果太大会被替换为字符串的长度,如果上界比下界小的话返回空字符串。

    

python 返回字典中某个值的索引 python返回字符串索引_python 返回字典中某个值的索引_26

    索引可是以数负。这样是从侧右开始计数。例如:

    

python 返回字典中某个值的索引 python返回字符串索引_字符串_27

    但是-0其实就是0,所以它其实不从侧右开始计数。

    

python 返回字典中某个值的索引 python返回字符串索引_Python_28

    越界的数负片切索引会被截断,但是这类情况在只有一个元素(非片切)的索引时是误错的:

    

python 返回字典中某个值的索引 python返回字符串索引_ico_29

    一种住记片切如何作工的式方是把索引作当字符面里的点,第一个字符的左缘边被标记为数字0,一个长度为n的字符串的最后一个字符的右缘边有具的索引是n,例如:

    

python 返回字典中某个值的索引 python返回字符串索引_字符串_30

    第一行的数字给出了索引0..5在字符串中的位置。第二行给出了响应的数负索引。从i到j的片切由标记为i和j缘边之间的有所字符构成。

    对于非负索引,片切的长度就是索引的差值,如果它们都在边界内之。例如,word[1:3]的长度是2。

    建内函数len()返回字符串长度:

    

python 返回字典中某个值的索引 python返回字符串索引_ico_31

    

3.1.3 关于Unicode

    从Python3.0开始,有所的字符串都支撑Unicode。

    Unicode的处好就是为在现和从前的每个脚本面里的每个文本字符都供提一个序数。之前,对于脚本字符只有256个可能的序数。文本被界限在一个代码页,它把序数映射到脚本字符。这致导多许乱混尤其是谈到软件国际化的时候。Unicode处理了这些问题,通过为有所的脚本只定义一个代码页。

    如果你想在字符串面里含包一个特别的字符,你可以应用Python的Unicode义转编码来实现它。面下的示例表现如何做:

    

python 返回字典中某个值的索引 python返回字符串索引_Python_32

    义转序列\u0020表示在指定位置插入一个Unicode字符,它的序值数是0x0020(空格)。

    其它的字符应用它们各自的序值数直接作为Unicode序值数来行进解释。如果你有一些字符串字面量值是应用多许西方国家的Latin-1编码的,你会现发它非常便利,因为Unicode的低256个字符和Latin-1的256个字符一样。

    除了这些标准编码外,Python供提了一个全部的以一个已知编码为基础建创Unicode字符串的其它式方的集合。

    把字符串应用指定的编码转换为字节序列,字符串对象供提了一个encode()方法,带有一个参数,是编码的名字。编码名称最好应用小写。

    

python 返回字典中某个值的索引 python返回字符串索引_Python_33

    

3.1.4 列表

    Python有多许复合数据型类,用来对其它的值行进组分。用途最多的是列表。它可以表示为写在中括号面里被逗号分割的项。列表面里的项不需要都是相同型类。

    

python 返回字典中某个值的索引 python返回字符串索引_字符串_34

    和字符串的索引一样,列表的索引从0开始,可以被片切,接连等:

    

python 返回字典中某个值的索引 python返回字符串索引_Python_35

    有所的片切操纵返回一个新的含包请求元素的列表。这意味着面下的片切返回一个列表a的浅拷贝:

    

python 返回字典中某个值的索引 python返回字符串索引_字符串索引_36

    字符串的值不可转变,不同的是列表的元素可以单个的转变:

    

python 返回字典中某个值的索引 python返回字符串索引_python 返回字典中某个值的索引_37

    也可以对一个片切行进值赋,这样可以转变列表的长度或将其整个清空:

    

python 返回字典中某个值的索引 python返回字符串索引_ico_38

    建内的len()函数一样实用于列表:

    

python 返回字典中某个值的索引 python返回字符串索引_ico_39

    列表可以嵌套(列表含包其它列表),例如:

    

python 返回字典中某个值的索引 python返回字符串索引_字符串_40

    可以在列表的尾部添加元素:

    

python 返回字典中某个值的索引 python返回字符串索引_字符串索引_41

    意注:最后一个示例中,p[1]和q引用同一个对象。

    

3.2 迈向编程的第一步

    当然,我们可以应用Python来实现比把两个东西相加更复杂的任务。例如,我们可以初始化一个斐波那契数列。如下:

    

python 返回字典中某个值的索引 python返回字符串索引_字符串索引_42

    这个示例含包几个新的特性。

    

  • 第一行含包一个多个值赋,变量a和b同时取得新值0和1。最后一行再次应用,演示了在任何一个值赋操纵发生前右边的有所表达式首先被盘算。右边的表达式的盘算顺序是从左到右。
  • 只要条件(这里是b < 10)仍然是true,while循环就执行。在Python里,就像C语言,一个非零的整值数为true,零是false。条件也可是以字符串或列表,事实上,对于任何序列,只要长度不是零就都是true,空的序列是false。示例面里的测试是一个简略的较比。标准较比操纵符的写法和C里的一样,<(小于)>(大于)==(即是)<=(小于即是)>=(大于即是)!=(不即是)。
  • 循环体是缩进的,缩进是Python用来组分语句的式方。在交互示提符,对于缩行进你不得不键入一个tab或几个空格。在实际操纵中,你需要一个文本编辑器来准备更加复杂的入输。有所的较比好的文本编辑器都有主动缩进的功能。当一个复合的语句被交互式的入输时,必须后跟一个空行来指示实现(因为解析器无法猜测你什么时候入输最后一行)。住记,一个基本块里的每一行都必须缩进相同的数量。
  • print()函数输出传递给它的表达式的值。它不同于你希望输出表达式的式方,它处置多个表达式,浮点数,字符串。字符串输出是不带引号,但包含字符之间的空格,你可以很好的格式化字符串。像这样:

关键字end可以用来在输出之后防止发生新行,或以一个不同的字符串束结输出:

python 返回字典中某个值的索引 python返回字符串索引_字符串_43

文章结束给大家分享下程序员的一些笑话语录: N多年前,JohnHein博士的一项研究表明:Mac用户平均IQ要比PC用户低15%。超过6000多的参加者接受了测试,结果清晰的显示IQ比较低的人会倾向于使用Mac。Mac用户只答对了基础问题的75%,而PC用户却高达83%。