plus基础_day01

1.今日内容大纲

  • 基础数据量类型的补充

  • 编码的初始

2.具体内容

2.1基础数据类型

int(float) str bool dict tuple list set

  • int(十进制与二进制转换)

    十进制转化成二进制:

    除2取余,逆序排列

    42 -------》 详见黑板 0010 1010

    二进制转化成十进制:

    0110 1 0 1 1 :从右至左,2的零次方开始。

    1*2**0 + 1*2**1 + 0*2**2 + 1*2**3 + 0*2**4..

  • str: 格式化输出

    扫描二维码关注公众号,回复: 7971704 查看本文章

    %s format

    %s

    # % 占位符  s--->str d--->dight
    # msg = '我叫%s,今年%d, 学习进度%d%%。' % ('渣男',18,5)
    # print(msg)

    format

    # format
    # msg = '我叫{},今年{}, 学习进度{}。'.format('健身哥',19,'3%')
    # msg = '我叫{0},今年{1}, 学习进度{2}。我依然叫{0}'.format('健身哥',19,'3%')
    # print(msg)
    msg = '我叫{name},今年{age}, 学习进度{process}。'.format(age=19,process='3%',name='龙崽儿')
    print(msg)

    ret = '12309'
    # print(ret.isdecimal()) # 判断字符串全部都是阿拉伯数字组成
    ret1 = 'BARRYfdasd123'
    # print(ret1.isalpha()) # 判断字符串全部都是字母组成
    # ret2 = 'abc123'
    # print(ret2.isalnum()) # 判断字符串全部都是字母或者数字组成

    # 下面的练习1编
    # name = 'barry'
    # #captalize,swapcase,title
    # print(name.capitalize()) #首字母大写
    # print(name.swapcase()) #大小写翻转
    # msg='taibai say hi'
    # print(msg.title()) #每个单词的首字母大写
    #
    # # 内同居中,总长度,空白处填充
    # ret2 = a1.center(20,"*")
    # print(ret2)

     

  • list

    # list:
    # 创建列表的方式:
    # l1 = [1, 2, 3, 4]
    # l1 = list('dfsdafdsaf')
    # # print(l1)
    # l1 = [i for i in range(10)]
    # # print(l1)
    # list

    l1 = [10, 9, 3, 7, 2, 6, 9, 1, 5]
    # l1.sort() 从小到大
    # l1.sort(reverse=True) 从大到小
    # l1.reverse() # 翻转
    # print(l1)

    # 通过索引找元素
    # print(l1[1])
    # 通过元素找索引(找到第一个元素即返回)
    # print(l1.index(9))

    # 列表可以相加
    # l1 = [1,2,3]
    # l2 = [22,33,44]
    # print(l1+l2)

    # 列表可以 与数字相乘
    # l1 = [11,22,33]
    # print(l1*3)
  • tuple

    只读列表,(1,2,3,[22,44]) 只能读取数据不能更改数据。

    一般工作中,将一些重要的数据构建在元组中,个人信息。

     

  • dict

    字典字典的特性: 字典是以键值对形式存储的,无序的容器型的数据类型无序: 3.字典 字典的特性: 字典是以键值对形式存储的,无序的容器型的数据类型 无序: 3.5版本之前无序,3.6版本之后,有序的。(这个顺序是按照创建字典初键值对的顺序排序) 可以存储大量的数据,查询速度非常快,缺点:占用的空间大。 字典的键是唯一的不可变的。 数据类型的划分: ,3.6版本之后,有序的。(这个顺序是按照创建字典初键值对的顺序排序)可以存储大量的数据,查询速度非常快,缺点:占用的空间大。字典的键是唯一的不可变的。

    数据类型的划分:

    • 可变与不可变

      可变(不可哈希)的数据类型:list,dict,set

      不可变(可哈希)的数据类型:tuple str int bool

      哈希: 哈希算法,只能针对不可变的数据类型,

    • 容器型与非容器型:

      容器型数据类型:list dict tuple set

      非容器型数据类型:str bool int

    生产环境相关: 4g内存,几百万个键值对,不用考虑内容优化的问题。

    # dic = dict.fromkeys('abcd','太白')
    # dic = dict.fromkeys([1,2,3],'太白')
    # print(dic)

     

  • 集合

    容器型的数据类型,可变的数据类型。{},集合要求里面的元素是不可变的数据类型,并且是唯一的,但是集合本身是可变的数据类型,集合无序的。

    # print({1, 'barry', (1,2,3), False})
    print({1, 'barry', (1,2,3), False,[1,2,3]})

    集合:

    1. 列表去重。

    2. 关系测试。交集,并集,差集等等。

       

  • 数据类型的转化

    int(float) str bool dict tuple list set

    • int str bool

      int ---> str
      i = 123
      str(i)

      str ---> int 有条件的,全部是数字组成的字符串转化成数字

      s = '100'
      if s.isdecimal():
      int(s)

      int ---> bool
      非零数字转化成bool都是True
      零转化成bool值是False。

      bool----> int
      b = True
      print(int(b))   1
      b = False
      print(int(b)) 0

         
    • list set

      list ---> set
      set(list) 列表去重
      set ----> list
      list(set)
    • str list

      str ----> list
      split
      s1 = 'barry-taibai-歌神'
      print(s1.split('-'))
      list ---> str
      l1 = ['barry', 'taibai', '歌神']
      print('+'.join(l1))
    • tuple list pass

    • 所有的数据类型 共同转化成False

      0 '' [] () {} set() None
2.2 编码初识

详见文件。

 

猜你喜欢

转载自www.cnblogs.com/peiji/p/11927763.html