• 基础二续


      元组,是只读列表,不能增删改查,也是一个容器,可以存入任何数据类型
    存储的是什么数据类型,取出来的时候,也就是什么数据类型
      而字符串就不是容器,在字符串只是一个一个的字符
    但注意:只是说,不能对儿子更改,对孙子可以改
    '''
    tuple1 = (123,'alex',('xx','yy'),['ab','cd',12],{'name':'jingxin','job':'teahcer'})
    print(tuple1)
    # 对于 tuple 而言,它的儿子不能改,但孙子能改,例如:['ab','cd',12]是tuple儿子,整个不能改,但可以改列表中的元素
    tuple1[3][0]= 'AB'
    print(tuple1)
    print(tuple1[3][0])
    
    输出结果:
    (123, 'alex', ('xx', 'yy'), ['ab', 'cd', 12], {'name': 'jingxin', 'job': 'teahcer'})
    (123, 'alex', ('xx', 'yy'), ['AB', 'cd', 12], {'name': 'jingxin', 'job': 'teahcer'})
    AB
    li = ["alex","WuSir","ritian","barry","wenzhou"]
    
    
    li.extend([1,"a",3,4,"heart"])  # extend() 迭代着增加
    
    li.append([1,"a",3,4,"heart"])  # 将列表整体追加到最后
    for i in range(10,-1,-1):
        print(i)
    
    输出结果:
    10
    9
    8
    7
    6
    5
    4
    3
    2
    1
    0
    
    Process finished with exit code 0
      列表,是容器,可以存储大量的数据,并且可以任意数据类型,可进行增删改查
      容器,可以存储任意数据类型,存进去是什么数据类型,取出来也是什么类型,
      这是与其它数据类的区别
      比如:字符串类型,存储进去的,取出来都是一个个字符
    '''
    # test_list = [133,'snake',True,['a','b','c'],(23,35,'joke'),{'date':'1988/6/7','hook':'jeason'}]
    # print(test_list)
    # print( test_list[0],type(test_list[0]) )  # 输出结果:133 <class 'int'>
    # print(test_list[1],type(test_list[1]))   # 输出结果: snake <class 'str'>
    # print(test_list[-1],type(test_list[-1])) # 输出结果:{'date': '1988/6/7', 'hook': 'jeason'} <class 'dict'>
    # print(['a','b','c'],type(['a','b','c'])) # 输出结果:['a', 'b', 'c'] <class 'list'>
    #
    # test_str = "['a','b','hover']"  # 从形式上看好像是把一个列表存储到字符串中
    # print(test_str)
    # print(test_str[0],type(test_str[0])) # 实际上都是一个个字符,取出来都是字符串类型
    # s = ['alex','taibai','nv','日天']
    # s[:2] = 'sbcbf'
    # print(s)
    #
    # l2 = [1,3, 8, 5, 7, 2,9]
    # # l2.sort()     # 从小到大排序,即升序
    # # print(l2)   #
    # # l2.sort(reverse=True)  # 从大到小排序,即降序
    # # print(l2)
    # l2.reverse()
    # print(l2)   # 将列表反转
    
    # l1 = ['alex','wusir','taibai','egon','景女神']
    # print(l1)
    # # 对列表的只剩,增删改查
    # # 增
    # # append() 追加到列表的最后
    # l1.append('小温老师')
    # print(l1)
    # l1.insert(2,'chris')   # 通过索引,在指定位置插入元素
    # print(l1)
    # # extend 迭代着追加  ,将可迭代对象的组成单元追加到最后
    # l1.extend('Hjk')
    # print(l1)
    # l1.extend(['abb','joke'])
    # print(l1)
    
    # 删除
    # l2 = ['alex','chris','john','carrot','大学城']
    # ret = l2.pop(0) # pop() 按照索引去删除,列表的唯一有返回值的函数
    # print(ret) # 返回值
    # print(l2)
    #
    # l2.remove('chris')    # remove 按照元素去删除
    # print(l2)
    #
    # l2.clear()  # 清空列表的元素
    # print(l2)   # 输出结果: []
    #
    # # del   删除, 是一个关键字
    # l2 = ['alex','chris','john','carrot','大学城']
    # del l2[0]   # 按照索引删除元素
    # print(l2)
    #
    # l2 = ['alex','chris','john','carrot','大学城']
    # del l2[1:4]   # 按照切片删除元素
    # print(l2)
    #
    # l2 = ['alex','chris','john','carrot','大学城']
    # del l2[0::2]  # 按照切片 + 步长删除元素
    # print(l2)
    #
    # l2 = ['alex','chris','john','carrot','大学城']
    # del l2    # 删除整个列表,在内存级别的删除
    # print(l2)  # 输出结果: NameError: name 'l2' is not defined
    
    # 改
    # l2 = ['alex','chris','john','carrot','大学城']
    # l2[1] = '男神'  # 按照索引去更改
    # l2[-2] = '日天'
    # print(l2)
    
    # 按照切片去更改
    # l2 = ['alex','chris','john','carrot','大学城']
    # l2[:3] = 'sbNB'  # 输出结果:['s', 'b', 'N', 'B', 'carrot', '大学城']
    '''
    背后的工作原理:
         首先,将切片对应的范围的原元素删除掉,然后将赋值符号右边的
    可迭代对象的元素,迭代着增加到列表;可迭代对象的元素个数没有限制。
    '''
    # print(l2)
    # l2 = ['alex','chris','john','carrot','大学城']
    # l2[3:5] = ['taibai','oldBoy','Eva_j']  # 输出结果:['alex', 'chris', 'john', 'taibai', 'oldBoy', 'Eva_j']
    # print(l2)
    
    # 按照切片 + 步长去更改
    # l3 = ['alex', 'chris', 'john', 'taibai', 'oldBoy', 'Eva_j']
    # l3[1:6:2] = 'GOD' # 输出结果:['alex', 'G', 'john', 'O', 'oldBoy', 'D']
    # l3[1:6:2] = ['jinxin','孙悟空','司徒大人','党参'] # ValueError: attempt to assign sequence of size 4 to extended slice of size 3
    '''
    注意事项:
       按照切片 + 步长 的方式去更改,当步长大于1时,即大于等于2时,用于赋值的可迭代对象的元素个数,与切片个数匹配,即一一对应
    '''
    # print(l3)
    
    ### 查 #
    # 可按索引,切片,切片 + 步长 去查
    # 可以用for 循环去查
    
    ####    其它方法    #####
    # l3 = ['alex', 'chris', 'john', 'taibai', 'oldBoy', 'Eva_j']
    # print(len(l3))  # len()  公共方法,求对象的长度或叫大小
    # print(l3.count('chris')) # count() 统计元素出现的次数
    # print( l3.index('taibai') ) # index()方法,查找指定元素第一次出现在列表的索引
    # l3 = ['alex', 'chris', 'john', 'taibai', 'oldBoy', 'Eva_j','taibai']
    # print( l3.index( 'taibai' )) # 输出结果:同样是3
    # l5 = [5,7,2,8,3,9,1]  # 这样写也可以,但不清晰,一目了然
    # l5 = [5, 7, 2, 8, 3, 9, 1]
    # l5.sort()  # 默认 从小到大 进行排序
    # print(l5)
    # l6 = [5, 7, 2, 8, 3, 9, 1]
    # l6.sort(reverse=True) # 将参数reverse设置为布尔值True,则 从大到小 排序
    # print(l6)
    # l7 = [5, 7, 2, 8, 3, 9, 1]
    # l7.reverse()  # 将列表反转
    # print(l7)  # 输出结果:[1, 9, 3, 8, 2, 7, 5]
    
    ### 元组 tuple ####
    '''
      元组,是只读列表,不能增删改查,也是一个容器,可以存入任何数据类型
    存储的是什么数据类型,取出来的时候,也就是什么数据类型
      而字符串就不是容器,在字符串只是一个一个的字符
    但注意:只是说,不能对儿子更改,对孙子可以改
    '''
    tuple1 = (123,'alex',('xx','yy'),['ab','cd',12],{'name':'jingxin','job':'teahcer'})
    # print(tuple1)
    # # 对于 tuple 而言,它的儿子不能改,但孙子能改,例如:['ab','cd',12]是tuple儿子,整个不能改,但可以改列表中的元素
    # tuple1[3][0]= 'AB'
    # print(tuple1)
    # print(tuple1[3][0])
    
    # range  用来产一个自定制的 数字范围的,可迭代对旬, 类似于列表
    # print(range(10),type(range(10)))  # 输出结果:range(0, 10) <class 'range'>
    # for i in range(10):        # 默认从0开始,顾头不顾尾
    #     print(i)
    # print("华丽的分隔线".center(100,'*'))
    # for i in range( 5,10):   # 指定开始值 ,和终值
    #     print(i)
    # print("华丽的分隔线".center(100,'#'))
    # for i in range(1,10,2):  # 指定开始值,终值,步长
    #     print(i)
    
    
    
    
    # 1, 找到alex的e元素。
    # 2, 将wusir变成大写。
    # 3, 给此列表['taibai',99,'ritian'] 追加一个元素,'文周'
    # 4,将 'taibai' 首字母大写
    # 5,将 99 通过数字加1 的方式变成100,并放回原处。
    
    # l3 = ['alex', 'wusir', ['taibai',99,'ritian'], 20]
    #
    # #1,找到alex的e元素
    # alex_index = l3.index('alex')
    # print( l3[alex_index].find('e') )
    # # 2,
    # wusir_index = l3.index('wusir')
    # l3[wusir_index] = l3[wusir_index].upper()
    # print(l3)
    # #3.
    # subList_index = l3.index(['taibai',99,'ritian'])
    # l3[subList_index].append("文周")
    # print(l3)
    # #4
    # taibai_index = l3[subList_index].index('taibai')
    # l3[subList_index][taibai_index] = l3[subList_index][taibai_index].capitalize()
    # print(l3)
    # #5
    # index_99 = l3[subList_index].index(99)
    # l3[subList_index][index_99] = l3[subList_index][index_99] + 1
    # print(l3)
    #
    # # tuple
    # range(1,10)
    # print(range(1,10))
    
    # l4 = ['alex', 'wusir', ['taibai',99,'ritian'], 20]
    #
    # for i in range(0,len(l4)):
    #     print(i,l4[i])
    #
    # print( 'alex' in l4 )
    # l4[0:2:1] = 'sbcfd'
    # print(l4)
    #l4[:2:2] = 'abcef'   # ValueError: attempt to assign sequence of size 5 to extended slice of size 1
    
    # slogan = 'abcdef'# 输出asb,bsb,csb,...fsb
    # is_first = True  # 设置第一次进入循环标志位
    # msg = ''
    # for item  in slogan:
    #     if is_first:
    #         msg += item
    #         is_first = False
    #     else:
    #         msg += 'sb
    ' + item
    # print(msg + "sb")
    li = [1, 3, 4, "alex", [3, 7, 8, "TaiBai"], 5, "RiTiAn"]
    循环打印列表中的每个元素,遇到列表则再循环打印出它里面的元素。
    我想要的结果是:
    1
    3
    4
    "alex"
    3
    7,
    8
    "taibai"
    5
    ritian
    
    
    '''
    
    # li = [1, 3, 4, "alex", [3, 7, 8, "TaiBai"], 5, "RiTiAn"]
    # for child in li:
    #     if isinstance(child,list):
    #         for i in child:
    #             print(str(i).lower())
    #     else:
    #         print(str(child).lower())
    
    ####### 方法二 #########################################
    # li = [1, 3, 4, "alex", [3, 7, 8, "TaiBai"], 5, "RiTiAn"]
    # for child in li:
    #     if type(child) == list:
    #         for grandChild in  child:
    #             print(str(grandChild).lower())
    #     else:
    #         print(str(child).lower())
  • 相关阅读:
    pageload 重新生成动态控件的問題
    管理員維護完整代碼如下:
    Control 'GridView1' of type 'GridView' must be placed inside a form tag with runat=server
    sqlserver兩種查詢方式效率比較
    管理員修改頁面代碼
    SQL2008卸载 检查是否重启错误
    安装Java环境
    asp.net cookie读写
    绘制几何图形——使用android.graphics类
    正则获取图片路径
  • 原文地址:https://www.cnblogs.com/chris-jia/p/9438083.html
Copyright © 2020-2023  润新知