码迷,mamicode.com
首页 > 编程语言 > 详细

Beginning Python Chapter 3 Notes

时间:2016-02-06 18:21:23      阅读:265      评论:0      收藏:0      [点我收藏+]

标签:

  变量(variable)是储存数据的实体,在Python中也被称为"名称"(name)。

  1.Python"名称"基本命名法则

    1.1) "名称"不能是Python的内置词(保留字、关键字)。

    1.2) "名称"由数字、下划线、字母组成。

   Python关键字表以及其余约定俗称的规则将在另一篇文章中详细阐述。

  技术分享原文的排版也是醉了,讲名称时又讲起了内置数据类型。为了尊重原文,所以下面还是谈谈Python的另外几种基本数据类型:元组、列表、集合、字典。

  2.序列类型(Sequence Types)-----元素有序,元素可重复

   2.1) Tuple 元组

   元组是不可变有序数据序列,一旦创建元组内容将无法再被修改。元组是值的序列,每个值都可以被单独访问。Python语言没有内置的数组类型(Array Type),但是我们可以通过Tuple来实现类似Java中Array的功能。而且元组的元素可以为任何Python合法数据,类似于Java的泛型机制。下面总结一下元组的特征:

     a) 属于Python序列大类。Python的序列支持切片操作,因此元组也支持切片(Slice)操作(PS:Matlab也支持切片操作)。

技术分享
1 #  元组支持切片操作
2 #  array[start:end:inc]
3 #  start表示开始索引位置,end表示结束索引位置(不包括),inc表示增益
4 
5 >>> array = ((1, 2, 3), (4, 5, 6), (7, 8, 9))
6 >>> array[0:1]
7 ((1, 2, 3),)
Tuple supports slice operation

     b) 类似于Java中的数组。支持通过下标索引获取数据,索引范围为0~len(array)-1。不过比Java更进了一步,Python支持了负索引,因此Python索引范围是-len(array)~len(array)-1。如果超出索引范围,会有IndexError提示。注意:元组中的索引是自动产生的,类似于字典中的键,当然索引可以是键。

技术分享
 1 #  元组支持通过索引寻址
 2 #  一般来说,如果只是序列,寻址的索引是自动生成的整数
 3 
 4 >>> array = (one, two, three, four, five)
 5 >>> array[0]
 6 one
 7 >>> array[-5]
 8 one
 9 >>> array[-6]
10 Traceback (most recent call last):
11   File "<pyshell#17>", line 1, in <module>
12     array[-6]
13 IndexError: tuple index out of range
Tuple supports index address

     还有,Python元组支持类似Java的多维数组。当然多维数组包括了规则多维数组和不规则多维数组。

技术分享
 1 #  元组支持类似Java多维数组的多维形式
 2 #  包括规则、不规则的多维类型
 3 
 4 >>> array = ((True, two, 3.0), [one, 2, 0.3e1], {one:1, two:2, three:3})
 5 >>> array[0][0]
 6 True
 7 >>> arr[1][0]
 8 one
 9 >>> array[2][one]
10 1
11 >>> array[2]
12 {one:1, two:2, three:3}
Tuple supports multidimensional Types

     c) 元组的内置函数     

     Python元组包含以下内置函数:
       cmp(tuple1, tuple2)  # 比较两个元组元素 
       len(tuple)           # 计算元组元素个数 
       max(tuple)           # 返回最大元组元素   min(tuple)           # 返回最小元组元素   
       tuple(list)          # 将列表转换为元组 

     d) 元组的基本概念

     元组的创建:

       >>> tup = () # 创建空元组      

       >>> tup = (one,) # 创建单元素元组时加","表明tup数据类型为元组,而不是单个元素的数据类型 

     元组的访问寻址:

       元组的访问寻址可以通过索引和切片,上文已经阐述,因此不再赘述。

     元组元素的修改:

       元组是不可变的有序序列。因此元组一旦被创建,则不能够再被修改。但是我们可以通过元组运算符"+"和"*"来对元组进行组合,不过这种组合的本质实际上是创建了新的元组。

       >>> tup1 = (1, 2)>>> tup2 = (3, 4) >>> tup3 = tup1 + tup2 >>> tup4 = tup1 + 2*tup2>>> print tup3 (1, 2, 3, 4) >>> print tup4  (1, 2, 3, 4, 3, 4)

        

       

     

     

      

     

   2.2) List 列表

   列表是可变有序数据序列

  3.集合类型(Collection Types)-----元素无序,可不可重复看具体集合类型

   3.1) set 自有集

   可重复集合

   3.2) frozenset 冻结集

   不可重复集合

  4.映射类型(Map Type)-----元素无序,key值不可重复,value值可重复

  

  

  

  

  

  

  

  

 

  

max(tuple)

Beginning Python Chapter 3 Notes

标签:

原文地址:http://www.cnblogs.com/forget406/p/5183327.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!