zoukankan      html  css  js  c++  java
  • 基础数据类型的补充

    1. 元祖

    元组里面如果只有一个元素且没有逗号,则该数据的数据类型与里面的元素相同。

    tu1 = ('laonanhai')
    tu2 = ('laonanhai',)
    print(tu1, type(tu1))
    print(tu2, type(tu2))
    
    tu1 = (1)
    tu2 = (1,)
    print(tu1, type(tu1))
    print(tu2, type(tu2))

    2.列表

    用算法将 (索引为奇数对应的所有元素全部删除)

    方法一:  错误展示!!!
    l1 = [111, 222, 333, 444, 555, ]
    for index in range(len(l1)):
    print('删除之前的index:%s' % index)
    print('删除之前的l1:%s' % l1)
    if index % 2 == 1:
    del l1[index]
    print('删除之后的index:%s' % index)
    print('删除之后的l1:%s' % l1)
    print(l1)


    方法二: 正确
    l1 = [111, 222, 333, 444, 555, ]
    for index in range(len(l1)-1, -1, -1):
    if index % 2 == 1:
    del l1[index]
    print(l1)

    在循环一个列表时,最好不要改变列表的大小,会影响你的最终结果。

    3.字典

    fromkeys的用法

    dic = dict.fromkeys('abc',666)
    print(dic)
    dic = dict.fromkeys([11,22,33],666)
    print(dic)
    dic = dict.fromkeys([1,2,3],[])
    dic[1].append(666)           # 如果在列表添加元素那么所有的键的值都会增加
    print(dic)

    在循环dict中,最好不要改变dict的大小,会影响结果或者报错。

    #  删除key里有“k”的键对值
    dic = {'k1': 'v1', 'k2': 'v2','k3': 'v3','name': 'alex'} for i in dic: if 'k' in i: del dic[i]

    # 字典在循环过程中不能删除里边的键对值!!!

    # 正确方法
    dic = {'k1': 'v1', 'k2': 'v2','k3': 'v3','name': 'alex'}
    l1 = []
    for key in dic:
    if 'k' in key:
    l1.append(key)
    # print(l1)
    for key in l1:
    del dic[key]
    print(dic)
  • 相关阅读:
    python 基础——generate生成器
    python 基础——*args和**kwargs
    猴子补丁
    python 元类——metaclass
    javascript 数据类型
    C/C++语言实现单链表(带头结点)
    C++仿函数和回调函数的异同
    C++利用动态数组实现顺序表(不限数据类型)
    const的用法
    数据结构之线性表
  • 原文地址:https://www.cnblogs.com/luchenhui/p/9002814.html
Copyright © 2011-2022 走看看