• 基础数据类型的补充


    1.基础数据类型的补充.

    下面看一个例子:

    s = '123'

    s1 = s.join('abc')

    print(s1)

    运行结果如下:

      

    由此可以看出join是将s的值插入s1每一项值之间.

    再一个例子:

    a = '***'

    s1 = a.join(['a', 'b', 'c'])

    print(s1)

    我们会得到以下结果:

    由此可见join()可以把列表变成字符串.

    2.删除列表中的每一项

    看到这句话我们会直接想到clear()这样我们就能直接把列表清空.

    但是,我们就想用循环把列表清空,怎么办?我们来看看下面这个例子:

     li = [11, 22, 33, 44]

    for e in li:
        li.remove(e)
    print(li)

    按照例子的原意是想通过for循环把li列表中的元素一个一个的删除.

    结果程序运行之后的结果为:

     

    运行完之后,我们打印的列表中还存在两个元素.

    原因是什么其实不难想象,如题,按照循环运行:

    第一次循环完成之后li中的元素的第[0]项.已经被删除.在运行第二次的循环之前li列表中的元素就变成一下这个样子:

    li = [22, 33, 44]

    li列表中的元素的索引会发生变化,所有的元素的索引会减少1,通俗的说就是后面的元素依次前进一位.而程序运行到第二次循环,这时要删除的是li的第[1]项.也就是现在33这个元素.

    以此类推

    得到的结果就变成

    [22, 44]

    结果因为索引的变化是删不干净的..那么如何能正确的通过循环把列表中的元素全部删除呢,我们来看下个例子:

    li = [11, 22, 33, 44]

    del_li = []

    for el in li:

           del_li.append(el)

    for el in del_li:

           li.remove(el)

    print(li)

    因为索引的改变,列表的元素是不能通过循环删除的,

    所以,新建一个空的列表,把li列表中的要删除的元素通过循环依次存入这个新列表del_li中

    我们再通过循环这个新列表找到要删除的元素,之后去原有列表li中把对应项删除.

    这样得到的结果:

    []

    3. dict中的fromkey(),可以帮我们通过list来创建一个dict

     

    我们运行下面这段代码:

    dic = dict.fromkeys(["jay", "JJ"], ["周杰伦", "麻花藤"])

    print(dic)

    结果: {'jay': ['周杰伦', '麻花藤'], 'JJ': ['周杰伦', '麻花藤']}

    通过结果我们可以看出最后dic生成的是一个字典

    二. set集合

    set集合是python的一个基本数据类型. 一般不是很常用. set中的元素是不重复的.无序的.里面的元素必须是可hash的(int, str, tuple,bool), 我们可以这样来记. set就是dict类型的数据但是不保存value, 只保存key. set也用{}表示

    注意:

    set集合中的元素是不可变的,但是set本身是可变的.

    Set集合中的元素排序是不重复的.无序的.因此,可以用set集合去除重复元素.

    set集合增删改查

    1.      增加

     

    2.      删除

     

    3.      修改

     

    4.      查询

     

    5. 常⽤用操作

     

    set集合本身是可以发生改变的. 是不可hash的. 我们可以使用frozenset来保存数据. frozenset是不可变的. 也就是一个可哈希的数据类型.

    我们可以理解为冻结的集合.

     

     
    
    
  • 相关阅读:
    c++ explicit 用法摘抄
    FBX SDK 从2012.1 到 2013.3 变化
    虚幻4 虚拟漫游场景 制作过程
    3DMAX 建立场景 工作流程
    保存路径选择对话框
    MFC 简单输出EXCEL
    快速使用Log4Cpp
    C# 调用 MFC DLL
    VS建立可供外部调用的MFC类DLL,C#调用MFC调用
    面试中被问到 “你对加班的看法” 该如何回答?
  • 原文地址:https://www.cnblogs.com/kongjubeihou/p/9289646.html
Copyright © 2020-2023  润新知