zoukankan      html  css  js  c++  java
  • Python学习笔记(三)数据类型

    在内存中存储的数据可以有多种类型,在Python中,能够直接处理的数据类型有以下几种:

      数字(Numbers)

      字符串(String)

      列表(List)

      元组(Tuple)

      字典(Dictionary)

      集合(Set)

      布尔值

    一、数字(int、long、float、complex)

    数字数据类型用于存储数值;他们是不可改变的数据类型,这意味着改变数字数据类型会分配一个新的对象。

    当你指定一个值时,Number对象就会被创建:

    View Code

    可以使用del语句删除一些对象的引用

    del语句的语法:

    1 del var1[,var2[,var3[....,varN]]]]

    可以通过使用del语句删除单个或多个对象的引用

    1 del var
    2 
    3 del var_a, var_b

    整数(int,long):

    Python可以处理任意大小的整数,当然包括负整数,在程序中的表示方法和数学上的写法一模一样,例如:1100-80800,等等。

    计算机由于使用二进制,所以,有时候用十六进制表示整数比较方便,十六进制用0x前缀和0-9,a-f表示,例如:0xff000xa5b4c3d2,等等。

    长整型也可以使用小写"L",但是还是建议您使用大写"L",避免与数字"1"混淆。Python使用"L"来显示长整型。

    浮点数:

    浮点数也就是小数,之所以称为浮点数,是因为按照科学记数法表示时,一个浮点数的小数点位置是可变的,比如,1.23x109和12.3x108是完全相等的。浮点数可以用数学写法,如1.233.14-9.01,等等。但是对于很大或很小的浮点数,就必须用科学计数法表示,把10用e替代,1.23x109就是1.23e9,或者12.3e8,0.000012可以写成1.2e-5,等等。

    整数和浮点数在计算机内部存储的方式是不同的,整数运算永远是精确的(除法难道也是精确的?是的!),而浮点数运算则可能会有四舍五入的误差。

    二、字符串

    字符串是以单引号'或双引号"括起来的任意文本,比如'abc'"xyz"等等。请注意,''""本身只是一种表示方式,不是字符串的一部分,因此,字符串'abc'只有abc这3个字符。如果'本身也是一个字符,那就可以用""括起来,比如"I'm OK"包含的字符是I'm,空格,OK这6个字符。

    如果字符串内部既包含单引号(')又包含(")可以用转义字符来标识,比如:

    View Code

    转义字符可以转义很多字符,比如 表示换行, 表示制表符,字符本身也要转义,所以\表示的字符就是,可以在Python的交互式命令行用print()打印字符串看看:

    View Code

    如果字符串里面有很多字符都需要转义,就需要加很多,为了简化,Python还允许用r''表示''内部的字符串默认不转义

    View Code

    如果字符串内部有很多换行,用 写在一行里不好阅读,为了简化,Python允许用'''...'''的格式表示多行内容

    View Code

    上面是在交互式命令行内输入,注意在输入多行内容时,提示符由>>>变为...,提示你可以接着上一行输入

    多行字符串'''...'''还可以在前面加上r使用

    字串列表有2种取值顺序:

      从左到右索引默认0开始的,最大范围是字符串长度少1

      从右到左索引默认-1开始的,最大范围是字符串开头

    如果你要取得一段子串的话,可以用到变量[头下标:尾下标],就可以截取相应的字符串,其中下标是从0开始算起,可以是正数或负数,下标可以为空表示取到头或尾

    View Code

    当使用以冒号分隔的字符串,python返回一个新的对象,结果包含了以这对偏移标识的连续的内容,左边的开始是包含了下边界。

    上面的结果包含了str[1]的值l,而取到的最大范围不包括上边界,就是str[5]的值p。

    加号(+)是字符串连接运算符,星号(*)是重复操作。

    View Code

    三、布尔值

    布尔值和布尔代数的表示完全一致,一个布尔值只有TrueFalse两种值,要么是True,要么是False,在Python中,可以直接用TrueFalse表示布尔值(请注意大小写),也可以通过布尔运算计算出来:

    View Code

    布尔值可以用andornot运算。

    and运算是与运算,只有所有都为Trueand运算结果才是True

    View Code

    or运算是或运算,只要其中有一个为Trueor运算结果就是True

    View Code

    not运算是非运算,它是一个单目运算符,把True变成FalseFalse变成True

    View Code

    四、空值

    空值是Python里一个特殊的值,用None表示。None不能理解为0,因为0是有意义的,而None是一个特殊的空值。

    五、列表(简单介绍)

    List(列表) 是 Python 中使用最频繁的数据类型;列表可以完成大多数集合类的数据结构实现。它支持字符,数字,字符串甚至可以包含列表(所谓嵌套)。

    列表用[ ]标识。是python最通用的复合数据类型。列表方法众多,暂不详表,后面单独记录。

    列表中的值得分割也可以用到变量[头下标:尾下标],就可以截取相应的列表,从左到右索引默认0开始的,从右到左索引默认-1开始,下标可以为空表示取到头或尾。

    加号(+)是列表连接运算符,星号(*)是重复操作

    View Code

    六、元组(简单介绍)

    元组是另一个数据类型,类似于List(列表)。

    元组用"()"标识。内部元素用逗号隔开。但是元组不能二次赋值,相当于只读列表。

    View Code

    元组与列表的不同在于,列表可变,元组不可变。

    七、字典(简单介绍)

    字典(dictionary)是除列表以外python之中最灵活的内置数据结构类型。列表是有序的对象结合,字典是无序的对象集合。

    两者之间的区别在于:字典当中的元素是通过键来存取的,而不是通过偏移存取。

    字典用"{ }"标识。字典由索引(key)和它对应的值value组成。

    View Code

    八、数据类型转换

    有时候,我们需要对数据内置的类型进行转换,数据类型的转换,你只需要将数据类型作为函数名即可。

    以下几个内置的函数可以执行数据类型之间的转换。这些函数返回一个新的对象,表示转换的值。

    函数 描述
    int(x [,base])

    将x转换为一个整数

    long(x [,base] ) 将x转换为一个长整数
    float(x)

    将x转换到一个浮点数

    complex(real [,imag]) 创建一个复数
    str(x) 将对象 x 转换为字符串
    repr(x) 将对象 x 转换为表达式字符串
    eval(str) 用来计算在字符串中的有效Python表达式,并返回一个对象
    tuple(s) 将序列 s 转换为一个元组
    list(s)

    将序列 s 转换为一个列表

    set(s) 转换为可变集合
    dict(d) 创建一个字典。d 必须是一个序列 (key,value)元组。
    frozenset(s) 转换为不可变集合
    chr(x) 将一个整数转换为一个字符
    unichr(x) 将一个整数转换为Unicode字符
    ord(x) 将一个字符转换为它的整数值
    hex(x)

    将一个整数转换为一个十六进制字符串

    oct(x)

    将一个整数转换为一个八进制字符串

    o(=•ェ•=)m纸上得来终觉浅,绝知此事要躬行o(=•ェ•=)m
  • 相关阅读:
    /etc/sysctl.conf 控制内核相关配置文件
    python 并发编程 非阻塞IO模型
    python 并发编程 多路复用IO模型
    python 并发编程 异步IO模型
    python 并发编程 阻塞IO模型
    python 并发编程 基于gevent模块 协程池 实现并发的套接字通信
    python 并发编程 基于gevent模块实现并发的套接字通信
    python 并发编程 io模型 目录
    python 并发编程 socket 服务端 客户端 阻塞io行为
    python 并发编程 IO模型介绍
  • 原文地址:https://www.cnblogs.com/occl/p/5851102.html
Copyright © 2011-2022 走看看