zoukankan      html  css  js  c++  java
  • Python02.5.数据类型-运算符-数据总结

    4.运算符

    • 身份运算(is ,is not)
    • is比较的是id,而双等号比较的是值
    • 毫无疑问,id若相同则值肯定相同,而值相同id则不一定相同

    >>> x=1234567890

    >>> y=1234567890

    >>> x == y

    True

    >>> id(x),id(y)

    (3581040, 31550448)

    >>> x is y

    False

    5.for循环

    循环可以迭代的对象里面的内容:

    name = ('nick','jenney')

    for i in name: print(i)

     
    • for和while的应用场景:有穷尽优先使用for, 无穷尽用while

    6.enumrate创建序列号

      为一个可迭代的对象添加序号,可迭代的对象你可以理解成能用for循环的就是可迭代的。默认是编号是从0开始,可以设置从1开始

    li = ["手机", "电脑", '鼠标垫', '游艇']

    for k, i in enumerate(li,1):

    print(k,i)

    手机

    电脑

    鼠标垫

    游艇

    7.range和xrange

    迭代循环:不会先在内存中创建,而是每次循环就创建一次,(节约内存)

    for i in range(10): #循环输出所生成的 0-9

    print(i)

    =========================================

    for i in range(1,10,2): #输出所生成的 1 3 5 7 9

    print(i)

    可以设置步长 ----->> range(0,100,2)

    range 里面会生成一个列表 [0,1,2,3,4,5,6,7,8,9,10]

    8.==和is的区别

    '''查看内存相关'''

    v2 = 'zhangs'

    print(id(v2)) # 查看内存地址

    ======================================================

    # python数据的小数据池 -5~256

    ======================================================

    ''' ==和is的区别'''

    # == 比较的是值

    # is 比较的是内存地址

    9.数据类型间的转换问题

    • int bool  str 三者转换

    # int ---> bool

    i = 100

    print(bool(i)) # True # 非零即True

    i1 = 0

    print(bool(i1)) # False 零即False

    ======================================================

    # bool ---> int

    t = True

    print(int(t)) # 1 True --> 1

    t = False

    print(int(t)) # 0 False --> 0

    ======================================================

    # int ---> str

    i1 = 100

    print(str(i1)) # '100'

    ======================================================

    # str ---> int # 全部由数字组成的字符串才可以转化成数字

    s1 = '90'

    print(int(s1)) # 90

    ======================================================

    # str ---> bool

    s1 = '太白'

    s2 = ''

    print(bool(s1)) # True 非空即True

    print(bool(s2)) # False

    # bool ---> str

    t1 = True

    print(str(True)) # 'True'

    • str list 两者转换

    # str ---> list

    s1 = 'alex 太白 武大'

    print(s1.split()) # ['alex', '太白', '武大']

    ======================================================

    # list ---> str # 前提 list 里面所有的元素必须是字符串类型才可以

    l1 = ['alex', '太白', '武大']

    print(' '.join(l1)) # 'alex 太白 武大'

    • list set 两者转换

    # list ---> set

    s1 = [1, 2, 3]

    print(set(s1))

    ======================================================

    # set ---> list

    set1 = {1, 2, 3, 3,}

    print(list(set1)) # [1, 2, 3]

    • str bytes 两者转换

    # str ---> bytes

    s1 = '太白'

    print(s1.encode('utf-8')) # b'xe5xa4xaaxe7x99xbd'

    ======================================================

    # bytes ---> str

    b = b'xe5xa4xaaxe7x99xbd'

    print(b.decode('utf-8')) # '太白'

    • 所有数据都可以转化成bool值

    '', 0, (), {}, [], set(), None

    10.数据类型总结

    • 集合:无序,即无序存索引相关信息
    • 元组:有序,需要存索引相关信息,不可变
    • 列表:有序,需要存索引相关信息,可变,需要处理数据的增删改
    • 字典:无序,需要存key与value映射的相关信息,可变,需要处理数据的增删改
  • 相关阅读:
    JSP基础学习
    opnet仿真过程中SEED的概念问题 分类: opnet 2014-11-02 15:25 69人阅读 评论(0) 收藏
    strtok函数 分类: c++ 2014-11-02 15:24 214人阅读 评论(0) 收藏
    无线网络中常用的路由算法 分类: 协议 2014-10-08 19:40 86人阅读 评论(0) 收藏
    cin问题 分类: c++ 2014-08-02 21:13 38人阅读 评论(0) 收藏
    opnet点对点通信模型 分类: opnet 2014-05-26 22:15 246人阅读 评论(3) 收藏
    opnet的sink模块学习 分类: opnet 2014-05-18 10:28 161人阅读 评论(0) 收藏
    opnet的simple_source模块学习 分类: opnet 2014-05-18 09:50 170人阅读 评论(0) 收藏
    OPNET中FIN,FOUT以及FRET的作用 分类: opnet 2014-05-12 16:07 144人阅读 评论(0) 收藏
    opnet安装及安装中出现问题的解决办法 分类: opnet 2014-04-06 21:50 397人阅读 评论(0) 收藏
  • 原文地址:https://www.cnblogs.com/cable-run/p/12161429.html
Copyright © 2011-2022 走看看