`

Python学习系列(五)

阅读更多
本节主要学习Python 3.1的复杂数据类型,内存管理和模块,下面做了一个Sample:
'''
Created on 2010-4-5

@author: Jamson Huang
'''
import os
#import filecmp
import copy
#Python常用的module: os
#pdb=>调试器
#logging=>记录器
#profile,hotshot,cProfile:性能调试器
#所有类的基类都是Object
if __name__ == '__main__':
    #global zone    
    tempStr = 'start to learn python class'
    intA = 5
    intB = 6
    #type():the type of all objects is 'type'   
    def typeFunc():
        print(type('42'))
        print(type(type('42')))
        print()
    typeFunc()
    #NoneType/None(Python 3.1)<=>Null(Python 2.6)
    def noneFunc():
        print(type(None))
        if (None):
            print('None is False')
        else:
            print('None is not True')
        a = 'adajkd'
    #两个对象之间的比较        
        if (a is None):
            print('a is None')
        else:
            print('a is not None')
        
    noneFunc()
    def moduleFunc():
        print(os.name)
    moduleFunc()
    #CALL self-definiton class
#    policy = Policy() 
#    policy.setPolicyId('1111111')
#    print(policy.getPolicyId())   
    #Python的内存管理:同java语言,程序员本身不需要关心它。由于python采用引用计数的方式,所以垃圾收集器
    #会回收那些计数器为0的变量和类,当然,也可以用del来直接做回收处理。其实,这点同java类似。  
    #Seqence[start1:end1,start2:ed2,...]
    def seqFunc():
        print(tempStr[::-1]) 
        print(tempStr[::-2])
    seqFunc()
    #内建函数:cmp(obj1,obj2)/str(obj)/repr(obj),'obj'/type()/isinstance()
#    print(cmp(str(intA), str(intB))) 
    #工厂函数:file()/dict()/bool()/tuple()/basestring()/unicode()
    print(str(tempStr))
    #id():变量和实例在内存中的标识符
    #存储模型:1.标量/原子类型(数值,字符串)2.容器模型(列表,元组,字典)    
    #更新模型: 1.变量类型:列表,字典;2.不可变类型:数值,字符串,元组
    #访问模型: 1.直接访问:数字; 2.顺序访问:字符串,列表,元组;3.映射访问:字典    
    def complexTypeFunc():
        print(id(tempStr))    
        aList = ['china', 'shanghai']
        print(id(aList))
        aList.append('Python')
        print(aList)
        print(id(aList))
        #列表/元组类型:列表是可变类型,而元组是不可变类型
        aList.append(['3333','4444'])
        print(aList)
        print(aList[3])
        aTuple = ('china','shanghai',['aaaa','bbbb'])
        print(aTuple)
        print(id(aTuple))
        print(aTuple.index('shanghai'))
        print(aTuple[::1])
        print(aTuple[:1])
        print(aTuple[1])
        #copy和deepCopy:deepCopy会完全Create一个新的容器类型。        
        newTuple = copy.copy(aTuple)
        print('Copy:', newTuple)
        print(id(newTuple))
        newDeepTuple = copy.deepcopy(aTuple)
        print('deepCopy:', newDeepTuple)
        print(id(newDeepTuple))
    complexTypeFunc()     

run Python, Console输出如下:
<class 'str'>
<class 'type'>

<class 'NoneType'>
None is not True
a is not None
nt
ssalc nohtyp nrael ot trats
sacnhy re ttas
start to learn python class
11610784
12877952
['china', 'shanghai', 'Python']
12877952
['china', 'shanghai', 'Python', ['3333', '4444']]
['3333', '4444']
('china', 'shanghai', ['aaaa', 'bbbb'])
12868104
1
('china', 'shanghai', ['aaaa', 'bbbb'])
('china',)
shanghai
Copy: ('china', 'shanghai', ['aaaa', 'bbbb'])
12868104
deepCopy: ('china', 'shanghai', ['aaaa', 'bbbb'])
12878432
0
0
分享到:
评论

相关推荐

    Python学习资料整理

    这个"Python学习资料整理"压缩包包含了一系列的学习资源,旨在帮助初学者和进阶者提升Python编程技能。 首先,Python的基础知识是理解其语法结构,包括变量、数据类型(如整型、浮点型、字符串、布尔型、列表、元组...

    Python学习手册 第5版(英文原版).zip

    《Python学习手册 第5版》是一本深入浅出的Python编程指南,专为那些希望掌握Python编程基础乃至进阶知识的读者设计。本书由资深Python开发者撰写,详细讲解了Python语言的核心概念、语法结构和常用库,是学习Python...

    Python学习资源

    "零基础学python"这个压缩包很可能是针对初学者设计的一系列学习资料,旨在帮助没有编程背景的人逐步掌握Python编程。 在学习Python的过程中,以下几个关键知识点是必不可少的: 1. **基础语法**:Python的基础...

    PYTHON学习资料包.zip

    【标题】"PYTHON学习资料包.zip"所包含的是一个综合性的Python学习资源集合,适合不同层次的学习者。从初学者到有一定基础的开发者,都可以在这个资料包中找到适合自己的学习材料。 【描述】"python学习资料包合集...

    Python-IPythonNotebooks学Python一系列ipynb来学习基础的Python编程知识

    "Python-IPythonNotebooks学Python一系列ipynb来学习基础的Python编程知识"这个主题涵盖了使用IPython Notebook学习Python编程的基础内容。通过一系列的.ipynb文件,你可以逐步学习Python的核心概念和语法,包括: ...

    Python学习路径以及学习视频

    "Python学习路径"意味着从初学者到精通者所应遵循的一系列学习步骤和资源。"黑马程序员全套视频课程"提供了全面的学习材料,涵盖从基础到高级的Python知识,包括Linux操作系统的基础、前端开发、网络爬虫技术以及Web...

    python 学习视频

    ##### 1.4 入门学习系列 - **知识点概述**:分为三个阶段,覆盖了从基本语法到高级特性的全面内容。 - **关键内容**: - 阶段一:变量、数据类型、运算符等; - 阶段二:函数、模块、异常处理等; - 阶段三:文件...

    python学习小项目

    "Python学习小项目"是专为刚刚接触编程或Python语言的人设计的一系列实践练习,旨在帮助他们巩固基础知识,提升编程技能。这个小项目可能涵盖诸如文件操作、数据处理、网页爬虫、图形用户界面(GUI)等方面的内容,...

    Python学习文档资料

    这份“Python学习文档资料”包含了两本极具价值的学习资源,旨在帮助初学者快速入门并深入理解Python语言。 第一本书是《笨办法学 Python(第四版)》。这本书以“做中学”的理念,引导读者通过一系列精心设计的练习...

    python学习经典书籍

    第一本,《Python学习手册》(Python Learning Handbook),这本书是Python学习的经典之作。作者深入浅出地介绍了Python的基础语法和核心概念,包括变量、数据类型、控制结构、函数、模块、面向对象编程等。此外,书...

    Python学习_pdf

    ### Python学习知识点详解 #### 一、Python简介与特点 **Python** 是一种高级编程语言,因其简单易学、功能强大而在全球范围内受到广泛的欢迎。它不仅是一种完全面向对象的语言,而且支持多种编程范式,如过程式...

    Python 学习资料下载地址大全

    本文将基于提供的几个链接以及其他相关资源,为大家总结归纳一系列值得收藏的Python学习资料。 #### 一、Python基础知识学习资源 1. **《Python基础教程》** - **下载地址**:...

    python学习源码和开发应用技术

    ### Python学习源码和开发应用技术 #### Python简介与特性 Python是一种高级编程语言,以其简洁易读的语法和强大的功能而闻名。Python支持多种编程范式,包括面向对象、命令式、函数式以及过程式编程。由于其设计...

    Python学习整理的资料.rar

    在这些压缩包文件中,我们可以找到多个关于Python学习的重要资源,涵盖了从基础到进阶的多个方面。 首先,"Python-3.3-官方入门指南(带目录)"是Python官方提供的教程,它为初学者提供了全面的学习路径。这个指南...

    Python学习100天离线版.zip

    "Python学习100天离线版.zip" 是一个专门为Python新手设计的系统性学习资源包,旨在帮助用户在100天内逐步掌握Python语言的核心概念和实战技能。 这个压缩包包含的"Python-100-Days-master"可能是一个GitHub项目的...

Global site tag (gtag.js) - Google Analytics