• python学习(四)数组,字符串,元组


    1、数组与字符串

         1)list属于可变变量,里面的值可以修改

             string属于不可变变量,里面的值不可修改

    例如我想把某个字符串的字符给修改替换

    info = '你好,今天天气有雨'
    info[2]='啊'
    print(info)

    结果如下:

    info[2]=''
    TypeError: 'str' object does not support item assignment   会报错

    2)数组与字符串使用for循环

    字符串使用for循环,循环字符串每个字符

    words = 'emily,emily1,刘佳,刘佳1'
    for name in words:
        print(name)

    结果如下:

    e
    m
    i
    l
    y
    ,
    e
    m
    i
    l
    y
    1
    ,
    刘
    佳
    ,
    刘
    佳
    1

    是循环字符串每各字符,一个个取出

    数组使用for循环,循环里面每个元素

    lists = ['emily','emily1','刘佳','刘佳1']
    for name in lists:
        print(name)

    结果如下:

    emily
    emily1
    刘佳
    刘佳1

    2、多维数组练习

    lists1 = ['测试','生日','刘佳','工程师',[1,2,3,4]]
    for name in lists1:
        if type(name)==list:
            for i in name:
                print(i)  
        print(name)

    结果如下:

    测试
    生日
    刘佳
    工程师
    1
    2
    3
    4
    [1, 2, 3, 4]

    3、练习:

    stus=[
    ['小明','未交'],
    ['小白','已交'], ['小紫','已交'],
    ['小红','未交'], ['小绿','未交'],
    ['小黄','未交'], ['小黑','已交']
    ]
    pass_list = []#所有已经交作业的同学
    fail_list = []#没有交作业同学的名字
    stus=[
          ['小明','未交'],
          ['小白','已交'], ['小紫','已交'],
          ['小红','未交'], ['小绿','未交'],
          ['小黄','未交'], ['小黑','已交']
        ]
    pass_list = []#所有已经交作业的同学
    fail_list = []#没有交作业同学的名字
    
    for name in stus:
       if name[1]== '已交':
          pass_list.append(name[0])
       else:
          fail_list.append(name[0])
    print('已交作业的同学是:%s'%pass_list)
    print('未交作业的同学是:%s'%fail_list)

    stus=[
          ['小明','未交'],
          ['小白','已交'], ['小紫','已交'],
          ['小红','未交'], ['小绿','未交'],
          ['小黄','未交'], ['小黑','已交']
        ]
    pass_list = []#所有已经交作业的同学
    fail_list = []#没有交作业同学的名字
    for stu in stus:
        status = stu[1]
        name = stu[0]
        if status == '已交':
            pass_list.append(name)
        else:
            fail_list.append(name)
    print('已交作业的同学是:%s'%pass_list)
    print('未交作业的同学是:%s'%fail_list)

    输出结果都是:

    已交作业的同学是:['小白', '小紫', '小黑']
    未交作业的同学是:['小明', '小红', '小绿', '小黄']

    4、元组

    1)元组也是一个list,它和list的区别就是元组里面的元素不能修改(增,删,改)

    2)元组的类型:

    t = (1,2,34,45,12,34)
    print(type(t))

    输出结果是:

    <class 'tuple'>

    3)元组的查询与list相同

    for i in t:
        print(i)

    输出结果为:

    1
    2
    34
    45
    12
    34
    t = (1,2,34,45,12,34)
    print(t[::2])

    输出结果为:

    (1, 34, 12)
    t = (1,2,34,45,12,34)
    t[1]=90
    print(t)

    输出结果会报错,提示元组并不能修改元素

    t[1]=90
    TypeError: 'tuple' object does not support item assignment

    4)相似写法的不同类型

    t = (1,2,34,45,12,34)
    word = (1)
    word2 = ('abc')
    print(type(t))
    print(type(word))
    print(type(word2))

    结果是:

    <class 'tuple'>
    <class 'int'>   
    <class 'str'>

    看一和二,如果给word这个加一个逗号

    t = (1,2,34,45,12,34)
    word = (1,)
    word2 = ('abc')
    print(type(t))
    print(type(word))
    print(type(word2))

    输出结果就不同了

    <class 'tuple'>
    <class 'tuple'>
    <class 'str'>

    也就是说如果元组里面只有一个元素的话,那么你必须在这个元素后面加一个逗号。

    5)元组找元素下标与个数

    元组找元素下标和个数与list相同

    t = (1,2,34,45,2,34)
    print(t.index(2))#找到元素的下标
    print(t.count(2)) #找到元素的个数

    结果为:

    1
    2
  • 相关阅读:
    根据表1更新表2的数据
    sql server 2008 不允许保存更改,您所做的更改要求删除并重新创建以下表
    sql server 2008 将某表里的数据随机插入另一个表表
    用SqlBulkCopy批量插入数据
    Win7 下如何添加任务计划呢
    20180320作业1:源代码管理工具调查 Polonium
    判断传入的电子邮箱账号的正确性 Polonium
    Java工厂方法模式 Polonium
    软工课后作业01 Polonium
    Java实现简单工厂模式
  • 原文地址:https://www.cnblogs.com/emilyliu/p/8660720.html
Copyright © 2020-2023  润新知