Python基础-2-数据类型

Python基础-2

数据类型

  • number(数字类型)
  • bool(布尔)
  • str(字符串)
  • list(列表)
  • tuple(元组)
  • set(集合)
  • dict(字典)

其中:

  • 不可变数据:number(数字类型)、bool(布尔)、str(字符串)、tuple(元组);
  • 可变数据:list(列表)、set(集合)、dict(字典)。

在python中,声明变量是不需要指定类型的,还可以同时进行多个变量的赋值(不同类型)

a, b, c = 1, 2, "柒哥"
数字类型 --- int、float、complex

数字类型包含三种:整数、浮点数和复数。此外,布尔值属于整数的子类型。

  • 整数具有无限的精度;
  • 浮点数通常使用 C 中的 double 来实现
  • 复数包含实部和虚部,分别以一个浮点数表示。 要从一个复数 z 中提取这两个部分,可使用 z.realz.imag
a, b, c = 20, 5.5, 4+3j
# a 赋值为 整数
# b 赋值为 浮点数
# c 赋值为 复数
整数 浮点数 复数
10 0.0 3.14j
100 15.20 45.j
-786 -21.9 9.322e-36j
080 32.3e+18 .876j
-0490 -90. -.6545+0J
-0x260 -32.54e100 3e+26J
0x69 70.2E-12 4.53e-7j
布尔类型 --- bool

布尔值使用常量True和False来表示(注意大小写)

  • 比较运算符的返回都是bool类型
  • 在python中,bool类型是整数类型的子类,所以True == 1 False == 0

True 或 False 的判定:

  • 以下会被判定为 False :

    • None

    • False

    • 任何数字类型的零,例如 0、0.0、0j。

    • 任何空序列,例如,''、()、[]。

    • 任何空映射,例如 {}。

    • 用户定义类的实例,如果该类定义了 bool() 或 len() 方法,当该方法返回整数零或 bool 值 False 时。

      • class alfalse():
             def __bool__(self):           # 定义了 __bool__() 方法,始终返回False
                 return False
        
        class alzero():
            def __len__(self):            # 定义了 __len__() 方法,始终返回0
                return 0
        
  • 除了以上的,其他的表达式均会被判定为 True;需要注意的是这个与其他的语言有比较大的不同

字符串 --- str

在 Python 中处理文本数据是使用 str 对象,也称为 字符串。 字符串是由 Unicode 码位构成的不可变 序列。
字符串定义:

  • 使用单引号 ' 或双引号 " 括起来,同时使用反斜杠 \ 转义特殊字符,当然还有三引号 ''' 的多行字符串。

    • 单引号: '允许包含有 "双" 引号'
    • 双引号: "允许包含有 '单' 引号"
    • 三重引号: '''三重单引号''', """三重双引号"""
  • # 单引号
    str = 'hello' 
    # 双引号
    str = "hello" 
    # 单引号包含双引号
    str = 'say "hello"'   
    # 双引号包含单引号
    str = "say 'hello'"   
    str = """
          双引号的
          多行字符串
    """
    str = '''
          单引号的
          多行字符串
    '''
    
  • 字符串的方法后续会单独统计展示。

列表类型 --- list

List(列表) 是 Python 中使用最频繁的数据类型。

  • 列表可以完成大多数集合类的数据结构实现。列表中元素的类型可以不相同,它支持数字,字符串甚至可以包含列表(所谓嵌套)。

  • 列表是写在方括号 [] 之间、用逗号分隔开的元素列表。

  • 使用列表推导式: `[x for x in iterable]

  • # 常规定义
    list = []     # 空列表
    list = [1, "a", [1], {"name": "test"}]
    # 列表推导式
    list = [x for x in range(10)]
    >>> [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
    
元组类型 --- tuple

元组(tuple)与列表类似,不同之处在于元组的元素不能修改。

  • 使用一对圆括号来表示空元组: ()

  • 使用一个后缀的逗号来表示单元组: a,(a,)

  • 使用以逗号分隔的多个项: a, b, c or (a, b, c)

  • 使用内置的 tuple(): tuple()tuple(iterable)

  • # 常规定义
    tuple = ()        # 空元组
    tuple = (50,) # 单个元素
    tuple = ('physics', 'chemistry', 1997, 2000);
    tuple = (1, 2, 3, 4, 5 );
    tuple = "a", "b", "c", "d";
    
集合类型 --- set

集合(set)是由一个或数个形态各异的大小整体组成的,构成集合的事物或对象称作元素或是成员。

  • 基本功能是进行成员关系测试和删除重复元素。

  • 可以使用大括号 { } 或者 set() 函数创建集合。

  • 注意:创建一个空集合必须用 set() 而不是 { },因为 { } 是用来创建一个空字典。

  • # 常规定义
    set(value)
    set = {value, value1}
    set = {'Google', 'Taobao', 'Runoob', 'Facebook', 'Zhihu', 'Baidu'}
    
    # set可以进行集合运算
    a = set('abracadabra')
    b = set('alacazam')
    
    print(a - b)     # a 和 b 的差集
    print(a | b)     # a 和 b 的并集
    print(a & b)     # a 和 b 的交集
    print(a ^ b)     # a 和 b 中不同时存在的元素
    
字典类型 --- dict

字典(dictionary)是Python中另一个非常有用的内置数据类型。

字典是通过名字来引用值的数据结构,并且把这种数据结构称为映射,字典中的值没有特殊的顺序,都存储在一个特定的键(key)下,键可以是数字、字符串甚至元组。字典也是python中唯一内建的映射类型

  • 字典是一种映射类型,字典用 { } 标识,它是一个无序的 键(key) : 值(value) 的集合。

  • 键(key)必须使用不可变类型。

  • 在同一个字典中,键(key)必须是唯一的。

  • # 常规定义
    dict = {}     # 空字典
    dict['one'] = "1 - 菜鸟教程"
    dict[2]     = "2 - 菜鸟工具"
    dict = {'Alice': '2341', 'Beth': '9102', 'Cecil': '3258'};
    # 构造函数创建
    dict([('Runoob', 1), ('Google', 2), ('Taobao', 3)])
    dict(Runoob=1, Google=2, Taobao=3)
    # 推导式
    dict = {x: x**2 for x in (2, 4, 6)}
    
  • 注意:

    • 1、字典是一种映射类型,它的元素是键值对。
    • 2、字典的关键字必须为不可变类型,且不能重复。

这边文章只是简单的罗列的一下python语言中内置的常规类型,每种数据类型的内置方法会在后续的更新中体现。

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 214,922评论 6 497
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 91,591评论 3 389
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 160,546评论 0 350
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 57,467评论 1 288
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 66,553评论 6 386
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 50,580评论 1 293
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,588评论 3 414
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,334评论 0 270
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,780评论 1 307
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,092评论 2 330
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,270评论 1 344
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,925评论 5 338
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,573评论 3 322
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,194评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,437评论 1 268
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,154评论 2 366
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,127评论 2 352

推荐阅读更多精彩内容