zoukankan      html  css  js  c++  java
  • 老男孩python学习_day004知识点

    1.列表

      1)增加 append():
        li = ['alex', 'wusir', 'egon', '女神', 'taibai']
        li.append('日天')
        li.append(1)     # 在后边追加
        print(li)     # ['alex','wusir','egon','女神','taibai','日天',1]

              》while 1:     # 完成持续增加,按Q/q退出
        username = input('>>>')
        if username.strip().upper() == 'Q':   #去空格 大写
          print('已退出')
          break
        else:
          li.append(username)
          print(li)

      2)插入 insert():
        li.insert(4,'春哥')     # 插入到4的位置
        print(li)         # ['alex', 'wusir', 'egon', '女神', '春哥', 'taibai']

      3)迭代插入 extend():   # int类型不可迭代,分解到元素,插入一个个元素
        li.extend('二哥')
        li.extend([1,2,3])
        print(li)         # ['alex', 'wusir', 'egon', '女神', 'taibai', '二', '哥', 1, 2, 3]

      4)删除 pop()  remove():
        li = ['taibai', 'alex', 'wusir', 'egon', '女神', ]

        name = li.pop(1)    # 按下标删除 有返回值,返回删除的元素 默认删除最后一个
        print(name,li) # alex ['taibai', 'wusir', 'egon', '女神']

        li.remove('taibai')     # 按元素去删除 无返回值
        print(li)        # ['alex', 'wusir', 'egon', '女神']


      5)清空 clear():
        li.clear()
        print(li) # []

      6)删除列表 del():
        del li         # 直接在内存中删除这个列表 再打印会报错
        print(li)

      7)切片删除 del():
        li = ['taibai', 'alex', 'wusir', 'egon', '女神', ]
        del li[0:2]       # ['wusir','egon','女神']
        del li[2:]      # ['taibai','alex']
        print(li)

      8)改:
        li[0] = '男兽' # 直接赋值覆盖
        print(li)       # ['男兽', 'alex', 'wusir', 'egon', '女神']

      9)切片删除后迭代插入:
        li = ['taibai', 'alex', 'wusir', 'egon', '女神', ]
        li[0:2] = '云姐asdf' # 把前两个删除,然后迭代插入每一个元素
        print(li)       # ['云', '姐', 'a', 's', 'd', 'f', 'wusir', 'egon', '女神']
        li[0:3] = [1,2,3,'春哥','咸鱼哥'] # 把前两个删除,然后插入这五个(因为用的是列表)
        print(li)         # [1, 2, 3, '春哥', '咸鱼哥', 'egon', '女神']

      10)查
        li = ['alex',[1,2,3],'wusir','egon','女神','taibai']
        l1 = li[0]
        print(l1)        # alex
        l2 = li[0:3]
        print(l2)        # ['alex',[1,2,3],'wusir'] 切片查打印出来是列表
        for i in li:
          print(i)     # 竖着打印出来 taibai alex wusir egon 女神

        li = ['alex', 'wusir', 'egon', '女神', 'taibai']
        print(li.index('wusir'))   # 1
        print(li.index('wusir',1,2))   # 可切片 返回位置 找不到报错


      11)元素个数 len(li)
       12)元素出现次数:

        print(li.count('taibai'))     # 返回出现次数 1

      13)排序 sort():
        正向排序:
          li = [1,5,4,7,6,2,3]
          li.sort()
          print(li)          # [1,2,3,4,5,6,7]
        反向排序:
          li.sort(reverse=True) # 默认false 改成true
          print(li)          # [7,6,5,4,3,2,1]

      14)反转 reverse():
        li.reverse()
        print(li)            # [3,2,6,7,4,5,1]

    2.列表的嵌套
      li = ['taibai', '武藤兰', '苑昊', ['alex', 'egon', 89], 23]
      print(li[1][1])           # 藤

      1)首字母大写再放回去
      》 name = li[0].capitalize()
        li[0] = name
        print(li)            # ['Taibai', '武藤兰', '苑昊', ['alex', 'egon', 89], 23]
      》 li[0] = li[0].capitalize() # 前两句合成一句写
        print(li)            # 结果一样

      2)把alex全变成大写再放回原处
        li[3][0] = li[3][0].upper()
        print(li)            # ['taibai', '武藤兰', '苑昊', ['ALEX', 'egon', 89], 23]

      3)替换
        直接赋值覆盖:
          li[2] = '苑日天'
          print(li)          # ['taibai', '武藤兰', '苑日天', ['alex', 'egon', 89], 23]
        元素内部改变:
          li[2] = li[2].replace('昊','ritian')
          print(li)          # ['taibai', '武藤兰', '苑ritian', ['alex', 'egon', 89], 23]

    3.元组
      只读列表,可循环查询,可切片。
      儿子不能改,孙子可能可以改(如果是属于列表 可改)
      tu = (1,2,3,'alex',[2,3,4,'taibai'],'egon')

      1) for i in tu:
        print(i)     # 竖着打印

      2) tu[4][3]=tu[4][3].upper()
        print(tu)     # taibai全大写再放回去,因为儿子是列表,所以可以改孙子

      3) tu[4].append('sb') # 列表后追加
        print(tu)     # (1, 2, 3, 'alex', [2, 3, 4, 'taibai', 'sb'], 'egon')

      4) join  可迭代对象都可操作(除了数字 bool )
        s = 'alex'
        s1 = '-'.join(s) # 用-连接可迭代对象的每一个元素
        print(s1)    # a-l-e-x

      5) 列表转化成字符串 list ----> str join()
        li = ['taibai','alex','wusir','egon','女神',]
        s = ''.join(li)    # taibaialexwusiregon女神 (无缝衔接)
        print(s)
        字符串转化为列表 str ----> list split() 分割

    4.range
      实际上就是一个按顺序排列的数字的列表

        for i in range(3,10):
          print(i)   # 竖着打印3456789 顾头不顾尾
        for i in range(10):
          print(i)   # 默认从0开头 0123456789
        for i in range(0,10,3):
          print(i)   # 3是步长 0369
        for i in range(10,0,-2):
          print(i)    # 10 8 6 4 2
        for i in range(0,10,-1):
          print(i)   # 不报错 但什么也不输出(面试题)
        for i in range(8,-3,-2):
          print(i)   # 8 6 4 2 0 -2

      循环打印列表中元素,嵌套的列表也拆开打印
      li = [1, 2, 3, 5, 'alex', [2, 3, 4, 5, 'taibai'], 'afds']

      》 for i in li:             # 法一
          if type(i) == list:   # 此处i代表元素
            for k in i:
              print(k)
          else:print(i)

      》 for i in range(len(li)):     # 法二
          if type(li[i]) == list:   # 此处i代表下标
            for j in li[i]:
              print(j)
          else:  
            print(li[i])

  • 相关阅读:
    实现业务逻辑的几种不同方法,及其优缺点 事务脚本、表模块、活动记录、领域模型
    JQuery Tree Jquery树型菜单插件
    SQL实现表名更改,列名更改,约束更改
    Differences Between NHibernate and Entity Framework
    CSS菜单,图片阴影,表单样式
    事务
    纯CSS三列布局
    Quartz Develop Practice One
    创建WinPE启动盘、常用imagex指令、常用dism指令
    Using User Defined Types in COM & ATL
  • 原文地址:https://www.cnblogs.com/lovely-yyh/p/9414858.html
Copyright © 2011-2022 走看看