Python基础—05-总结:双重循环,数据类型

总结

双重循环

  • 冒泡排序

    lt = [1, 5, 7, 3, 2, 4]
    
    # 计算元素的个数
    n = len(lt)
    # 外层循环控制圈数
    for i in range(n-1):
        for j in range(n-1-i):
            # 不合适,交换数据
            # 此处是升序排序,若想降序需要将 > 改为 <
            if lt[j] > lt[j+1]:
                # 其他语言
                # temp = lt[j]
                # lt[j] = lt[j+1]
                # lt[j+1] = temp
                # python特有
                lt[j], lt[j+1] = lt[j+1], lt[j]
    
    print(lt)

     

  • 选择排序(练习)

    思想:
        取出第一个元素,依次与后面的元素进行比较,不合适交换位置,直至比较结束,一轮可以确定开头一个
        每轮确定一个元素,依次向后,n个元素需要n-1轮比较
    示例:lt = [3, 5, 2, 1, 8, 4]
        第一轮:1 5 3 2 8 4
        第二轮:1 2 5 3 8 4
        第三轮:1 2 3 5 8 4

     

    提示:仍然使用双重循环进行解决,外层循环控制循环多少轮,内心循环控制元素比较

数据类型

  • 集合

    添加:add
    删除:
        remove,元素存在就删除,不存在就爆粗
        discard,元素存在就删除,不存在也不保存
        pop,随机弹出一个元素,返回后删除元素
    清空:clear
    并集:union
    交集:
        intersection:不改变原集合
        intersection_update:使用交集更新原集合
    差集:
        difference:不会改变原集合
        difference_update:使用差集更新原集合
    判断:
        isdisjoint:是否没有交集
        issubset:是否是另一集合的子集
        issuperset:是否是另一集合的超集(父集)

     

  • 字典

    获取:
        d[key]:根据键获取值,不存在时或报错
        d.get(key, '默认值'):不存在时默认返回None,也可以指定默认值
    更新:
        d[key] = value    键存在就更新,不存在就添加
        d.update(d2)    将字典d2中的键值对依次添加到d中,已经存在的键会覆盖
    删除:
        del d[key]
        d.pop(key)        返回删除的值
    清空:clear
    所有键:keys        返回可迭代对象
    所有值:values        返回可迭代对象

     

  • 字符串

    join:拼接
    split:切割,从左边
    rsplit:从右边切割
    splitlines:按照换行符切割

     

    自行测试:

    find:查找第一次出现指定字符串的位置,没有时返回-1
    rfind:从右边开始查,返回第一次出现的位置
    
    upper:全大写
    lower:全小写
    swapcase:大小写转换
    capitalize:首字符大写
    title:每个单词首字母大写
    
    count:统计某个字符串出现的次数
    startswith:是否以指定字符串开头
    endswith:是否以指定字符串结尾
    
    istitle:是否每个单词首字母大写
    islower:是否是全小写
    isupper:是否是全大写
    isdecimal:是否是数字
    isalpha:是否是字母
    isalnum:是否是数字或字母

     

     
posted @ 2018-09-18 19:39  Sunwj_Monkey  阅读(3074)  评论(0编辑  收藏  举报