zoukankan      html  css  js  c++  java
  • Python 基础第四天

    主要内容:

    1.for 循环补充: for .... else....  for ...range..的使用

    2.list(列表和列表的常用方法)

    3.list的嵌套

    4.元组(tuple)

    1.for (有限)循环的补充

    1)for ... else..的用法与while...else类似

    循环内有break打断的,不执行外面的else,for循环内正常执行完毕的,执行else

    li = [1,2,3,['alex','wusir','老男孩'],4]

    for i in li:

        print(i)

        break

    else:

      print(666)

    使用break 不会打印 666不使用,最后打印666

    2) range 可以把range看做是一个数字的列表,范围是自己定义的.

    正序范式:
    for i in range():

    倒序的各种常用方式:
    简便方法:
    #reversed 方法表示倒序,不使用range格式.
    #如果是int格式的数字,报错:TypeError: 'int' object is not reversible

    #先构建一个列表,然后对列表中的元素进行反转 (只针对列表类型数据使用)
    a = range(int)
    for x in reversed(a):  

       print (x)  

    通用方法:
    #(len(a)-1)表示起始位置,就是倒序的第一位,第二位的-1表示结尾位,最后一位-1表示访问步长.取值规则:顾头不顾尾.
    #即开头值能够取到,结尾要超过一位.
    for x in range(len(a)-1,-1,-1): 

    print (x) 



    例:
    列出1---100的数
    for i in range(100):
      print(i)
    for i in range(99,-1,-1)
      print(i)

    例:
    打印列表内每个元素的索引
    方法1:
    li = [2,3,'alex',4,5]
    for i in li:
      print(li.index(i))

    方法二:
    li = [2,3,'alex',4,5]
    for i in range(0,len(li)):
      print(i)


    列表和列表的常用用法
    li = ['alex', 123, True, (1, 2, 3, 'wusir'), [1, 2, 3, '小明',], {'name':'alex'}]
    列表用[]表示,类型为:type(li) == list
    列表的基本用法与str类似
    可以分为: 索引,切片和步长
    列表索引:
    print(li[0])
    print(li[3])
    print(li[0:4])
    print(li[:4])

    list的增删改查
    li = [1,'a','b','a',2,3,'老男孩']
    *增加
    1.append
    li.append('alex') #增加字符串
    li.append([1,2,3])#增加列表
    例题:

    name_list = ['杰哥' ,'民歌','花心哥','狗友','芳芳']
    while True:
    name = input('请输入新员工姓名:Q/q')
    if name.upper() == 'Q':break
    else:
    name_list.append(name)
    print('已成功添加新员工%s' % name)
    print(name_list)


    2.插入 insert()
    li.insert(2,"小三") #前面代表索引位置,后面为插入的数据

    3.添加可迭代对象,把内容逐一添加到最后一行
    extend()
    li.extend([1,2,3])
    结果:['a', 'b', '男孩', 'girl', 3, 2, 'alex', 1, 2, 3]

    *删除
    1.pop() #默认删除最后一个
    li.pop(1) #内容为索引,可以删除索引的内容
    s = li.pop(1) #此删除是唯一一个有返回值的
    返回值为删除的元素

    2.remove #根据元素删除,所填的内容是元素名称,如果列表内有多个相同元素,只删除一个
    li.remove('a')

    3.clear #清空列表

    4.del li #删除整个列表
    del li[:3] #切片删除
    del li[:3:2] #步长删除

    *改
    1.使用索引方式更改
    作为一个整体将等号右边的内容放到左面索引的位置,并替换掉旧内容.
    li[2] = 'alex'
    li[1] = [1,2,3]

    2.使用切片方式更改
    作为一个整体将等号右边的内容放到左面索引的位置,并替换掉旧内容.
    li[:2] = 'alex'
    li[:2] = [1,12,3]

    *查
    1.使用print 打印出列表的索引,切片,步长等值
     print(li[2])
    print(li[:3])
    print(li[1:3:2])
    2.使用for循环遍历列表内容
    for i in li:
      print(i)

    其他操作
    *sort #从大到小,正向排序
    sort(reverse=True) #从大到小,反向排序

    注意:

    l1 = ['a','B','r','E','j','大',"小","黑",'W','w','c']
    1.排序的列表中值是int 和 str ,不能混合
    2.如l1 这种混合字符串排序为:大写---小写---中文
    3.大小写字母可以按照英文字母顺序排列,中文则无法排序,会显示原顺序
    4.如果想给更改后的列表赋值,应该注意
    s = l1.sort()
    print(s)
    ->>None
    正确操作:
    l1.sort()
    s = l1
    print(s)

    *reverse() #反转操作, 列表内的元素从尾到头重新排列
      li.reverse()

    *join() #将列表转换成字符串 .连接可迭代对象中的每个元素,形成一个新的字符串

      li = ['wusir','taibai','alex']
      print(' '.join(li))

    返回的结果
     'wusir taibai alex'

    *len() #统计列表长度即元素个数

    *count() #统计单个元素个数

      li.count('wusir')

    *index() #通过元素找索引,可以切片

    *列表的嵌套
    l1 = [1,2,['alex','b',c],'e']
    li = [1,2,'alex',['100','wusir',99,[]],22]
    例:将wusir变成全部大写的wusir 放到原处
    li[3][1] = l2[1].upper()
    print(li)
    li[3][1] = li[3][1].upper()
    print(li)

    元组
    *元组是不可更改的只读列表,用()表示.元组的特性:儿子不能改,孙子可能改
    tu = (1,2,'alex','oldboy')
    print(tu[:2])
    print(tu[2])
    元 组同样 有索引,切片


























    
    









  • 相关阅读:
    下载文件总结
    用PHP,怎么获取PHP.ini中的文件上传最大的字节数。也就是默认的2M
    TP框架下载功能 - 不想下天桥 - 博客园
    CSS,font-family,好看常用的中文字体
    安装Wamp后 Apache无法启动的解决方法
    :nth-child(n)
    list-style
    netbeans常用快捷键
    ideaic快捷键
    配置nutch
  • 原文地址:https://www.cnblogs.com/tom2ling/p/8619138.html
Copyright © 2011-2022 走看看