• Python核心教程(第二版)读书笔记(二)


    数字类型

    Python支持五种基本数字类型,其中三种是整形类型:

    1. 有符号整形

    2. 长整形 (表示的数字仅受限于用户计算机的虚拟内存总数,可以无限长,只要虚拟内存足够大)

    3. 布尔型(TrueFalse

    4. 浮点数型

    5. 复数(在其他语言中通常不被直接支持,一般通过类来实现)

    字符串

    Python的字符串被定义为引号之间的字符集合。

    Python支持使用成对的单引号、双引号、三个单引号、三个双引号来包含字符。

    使用索引操作符[]和切片操作符[:]可以得到子字符串

     字符串的索引规则:第一个字符的索引是0,最后一个字符的索引是-1

    加号(+)用于字符串连接运算,乘号(*)用于字符串的重复。

     

    列表和元组

    可以将列表和元组当做普通的“数组”,它能保存任意数量类型任意类型的Python对象。

    可以通过从0开始的数字索引访问元素。

    列表和元组可以存储不同类型的对象。

    列表使用[]中括号,元素的个数及元素的值可以改变。

    元组使用()小括号,元素的个数及元素的值不可以修改。

    列表和元组都可以通过使用索引操作符[]和切片操作符[:]得到子集。

    列表通过切片操作得到的是列表,元组通过切片操作后得到的还是元组。

     

    字典

    字典是Python中的映射数据类型。由键-(key-value)对构成的。几乎所有类型的Python对象都可以用作键。不过一般还是以数字或者字符串最为常用。值可以是任意类型的Python对象。

    字典元素使用大括号{}包裹起来。

     

    for循环

    Python中的for循环与传统的for循环(计数器循环)不太一样。它更像Shell脚本里的foreach循环。Python中的for循环接受可迭代对象(例如:序列或迭代器)作为其参数,每次迭代其中一个元素。

    Enumerate()函数可以同时循环索引和循环元素。

    #coding=utf8
    fori,ch in enumerate("abcddfgege"):
    printch,
    '%d' %i

    结果为:

    a0

    b1

    c2

    d3

    d4

    f5

    g6

    e7

    g8

    e9

     

    列表解析

    可以在一行中使用一个for循环将所有值放在一个列表中。

    举例:

    OK =[x**2 for x in range(4)]
    print OK #result: [0, 1, 4, 9]

    列表解析甚至能做更复杂的事情,比如挑选出符合要求的值放入到列表中。

    举例:

    Good= [x**2 for x in range(10) if x!=2 and x!=5 ]
    print Good #result: [0, 1, 9, 16,36, 49, 64, 81]
     

    打开文件

    handle= open(file_name,access_mode = ‘r’)

    file_name变量是我们希望打开的文件的字符串名字。

    Access_mode中,’r’表示读取,’w’表示写入,’a’表示添加

    其它可能用到的标识还有’+’表示读写,’b’表示二进制访问。默认值为’r’

    如果open()成功,一个文件对象句柄会被返回。所有后续的文件操作都必须通过此文件句柄进行。

     

    函数

    函数在调用之前必须先定义。如果函数中没有return语句,就会自动返回None对象。

    Python是通过引用调用的。这意味着函数内对参数的改变会影响到原始对象。不过事实上只有可变对象会受此印象,对不可变对象来说,它的行为类似按值调用。

     

    类的定义方法:

    class ClassName(base_class[es]):
    “optionaldocumentation string”
    static_member_declarations
    method_declarations
    使用class关键字定义类。

    可以提供一个可选的父类或者说基类。如果没有合适到基类,那就使用object作为基类。

    class行之后是可选的文档字符串、静态成员定义及方法定义。

     

    Self.__class__.__name__

    这个变量表示实例化它的类的名字。(self.__class__.__name__引用实际到类)

     

    一个类的实例:

     
    代码
    #coding=utf8
    class FooClass(object):
    """my very first class : FooClass"""
    version
    = 0.1

    def __init__(self,nm="Jerry"):
    """constructor"""
    self.name
    = nm
    print 'Created a class instance for',nm
    def showname(self):
    """dislpay instance attribute and class name"""
    print 'Your name is',self.name
    print 'My name is',self.__class__.__name__
    def showver(self):
    """display class(static) attribute"""
    print self.version
    def addMe2Me(self,x):
    """apply + operation to argument"""
    return x+x

    test
    = FooClass('This is a test') #Created a class instance for This is a test
    print test.version #0.1
    print test.addMe2Me('Good') #GoodGood
    print test.name #This is a test
    test.showname() #Your name is This is a test
    #My name is FooClass
    test.showver() #0.1

    Ubuntu下终端中退出Python解释器的方法:

    1、使用快捷键ctrl+D

    2importsys

          sys.exit()

     

    没事,别怕,这是签名→→┃ 青山幽谷笛声扬,白鹤振羽任翱翔。往事前尘随风逝,携手云峰隐仙乡。 ┃
  • 相关阅读:
    希望多年以后的自己不再如此迷茫
    【转载】撒旦(Satan 4.2)勒索病毒最新变种加解密分析
    java单例模式
    关于double/float 两种基本类型精度丢失的总结
    关于ecplise中一些很实用的技巧
    安装SQL Server和卸载SQL Server步骤
    我进入部门的第一周
    mysql数据库在Linux和windows下免安装实现以及框架开发碰到的问题
    jenkins发布docker到mesos
    u盘作为git仓库,完成不同地方的代码同步
  • 原文地址:https://www.cnblogs.com/dabiao/p/1707797.html
Copyright © 2020-2023  润新知