精华内容
下载资源
问答
  • Python list函数

    万次阅读 多人点赞 2018-10-05 22:17:51
    Python内置函数list介绍、使用示例和注意事项。

    目录

    描述

    语法

    使用示例

    1. 创建一个空列表(无参调用list函数)

    2. 将字符串转换为列表

    3. 将元组转换为列表

    4. 将字典转换为列表

    5. 将集合转换为列表

    6. 将其他可迭代序列转化为列表

    注意事项

    1. 参数必须是可迭代序列对象

    2. 无意义的转换----将列表转换为列表


    描述

    list()函数是Python的内置函数。它可以将任何可迭代数据转换为列表类型,并返回转换后的列表。当参数为空时,list函数可以创建一个空列表。

    语法

    list(object)
    名称说明备注
    object待转换为列表的数据类型可省略的参数

    使用示例

    1. 创建一个空列表(无参调用list函数)

    >>> test = list()
    >>> test
    []

    2. 将字符串转换为列表

    >>> test = list('cat')
    >>> test
    ['c', 'a', 't']

    3. 将元组转换为列表

    >>> a_tuple = ('I love Python.', 'I also love HTML.')
    >>> test = list(a_tuple)
    >>> test
    ['I love Python.', 'I also love HTML.']

    4. 将字典转换为列表

    >>> a_dict = {'China':'Beijing', 'Russia':'Moscow'}
    >>> test = list(a_dict)
    >>> test
    ['China', 'Russia']

    ⚠️注意:将字典转换为列表时,会将字典的值舍去,而仅仅将字典的键转换为列表。如果想将字典的值全部转换为列表,可以考虑使用字典方法dict.values()

    5. 将集合转换为列表

    >>> a_set = {1, 4, 'sdf'}
    >>> test = list(a_set)
    >>> test
    [1, 'sdf', 4]

    6. 将其他可迭代序列转化为列表

    下面的代码将range类型和map类型的可迭代序列转换为列表:

    >>> test1 = list(range(10))
    >>> test2 = list(map(int, [23.2, 33.1]))
    >>> test1
    [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
    >>> test2
    [23, 33]

    注意事项

    1. 参数必须是可迭代序列对象

    list函数的参数必须是可迭代对象。当选用不可迭代的对象作为参数时,Python报错。

    >>> test = list(12)
    Traceback (most recent call last):
      File "<stdin>", line 1, in <module>
    TypeError: 'int' object is not iterable

    2. 无意义的转换----将列表转换为列表

        可以使用list函数将列表转换为一个列表,虽然这么做Python不会有任何的异常或者报错----但是这种行为显然是没有意义且浪费资源的行为。

    >>> a_list = ['Python', 'C', 'Java', 'HTML', 'CSS']
    >>> test = list(a_list)
    >>> test
    ['Python', 'C', 'Java', 'HTML', 'CSS']

    展开全文
  • Python中如何求列表list的平均数

    万次阅读 多人点赞 2019-09-28 10:12:07
    Python中如何求列表list的平均数 当列表list中只包含数字时,如何求取它的平均数: from numpy import * a = [52,69,35,65,89,15,34] b = mean(a) print(b) 运行结果: 51.285714285714285 ...

    Python中如何求列表list的平均数

    当列表list中只包含数字时,如何求取它的平均数:

    from numpy import *
    a = [52,69,35,65,89,15,34]
    b = mean(a)
    print(b)
    

    运行结果:

    51.285714285714285
    
    展开全文
  • Python 面试100讲(基于Python3.x)

    万人学习 2019-11-15 10:20:42
    本课程搜集了各大互联网公司的Python面试题以及类似的题目。课程体系包括Python语言本身的知识、Python SDK、Web、Python爬虫以及算法等内容。所以的源代码都使用Python3.x编写。Python相关知识包括基本语法、正则...
  • Python中list的清空

    万次阅读 2017-11-18 09:53:07
    第一类,在非函数参数的list中,可以使用del lst_new[] 或者list_new = [] 来清空列表。 del_lst.pylst_new = [] lst_new.append(3) lst_new.append("233") print lst_new lst_new = [] print lst_new执行结果:[3, ...

    首先需要明确,在Python中,清空列表的操作有两类四种:

    • 第一类,在非函数参数的list中,可以使用del lst_new[] 或者list_new = [] 来清空列表。

    del_lst.py

    lst_new = []
    lst_new.append(3)
    lst_new.append("233")
    print lst_new
    lst_new = []
    print lst_new

    执行结果:

    [3, '233']
    []

    很明显,在普通的非函数参数list中只需要使用 del lst_new[] 或者 list_new = [] 就可以清空列表。

    • 第二类,对于作为函数参数的list,用上面的方法是不行的,因为函数执行完后,list长度是不变的,但是可以在函数中释放一个参数list所占内存: del lst_new[:] 或者 lst_new [:] = [],达到清空列表的目的,速度很快,也彻底。

    del_lst.py

     from del_lst_fun import *
     choice = input("请输入所需功能的编号:")
        if choice == 1:
        ...
        ...
        elif choice == 7:
            new_lst(lst_shape)

    del_lst_fun.py

    def new_lst(lst_shape):
        # lst_shape[:] = [] 这样写也是可以的
        del lst_shape[:]
        print "数据已清空!"

    执行结果:

    [3, '233']
    []
    数据已清空!

    由此可知,作为函数参数的list,必须使用del lst_new[:] 或者 lst_new [:] = [] 以达到清空列表的目的。


    分析: Python 赋值,往往是通过指针完成的,a=b,只是让a的指针指向了b,并未把b的内容拷贝到a,由此可知,其实函数的本意是将参数list指向的内存清空,用list=[],并不能清空L指向的内存。

    展开全文
  • Python列表排序 list.sort方法和内置函数sorted

    万次阅读 多人点赞 2019-05-18 15:17:54
    Python列表排序 list.sort方法和内置函数sorted 很多时候我们获取到一个列表后,这个列表并不满足我们的需求,我们需要的是一个有特殊顺序的列表. 这时候就可以使用list.sort方法和内置函数sorted,本文就是介绍list....

    Python列表排序 list.sort方法和内置函数sorted

    很多时候我们获取到一个列表后,这个列表并不满足我们的需求,我们需要的是一个有特殊顺序的列表.

    这时候就可以使用list.sort方法和内置函数sorted,本文就是介绍list.sort方法和sorted内置函数的使用方法和区别.

    一、list.sort方法

    list.sort方法会就地排序列表,也就是说不会把原列表复制一份。这也是这个方法的返回值是None的原因,提醒您本方法不会新建一个列表。

    在这种情况下返回None其实是Python的一个惯例:如果一个函数或者方法对对象进行的是就地改动,那它就应该返回 None,好让调用者知道传入的参数发生了变动,而且并未产生新的对象。

    来看一下代码:

    # coding=utf-8
    list_a = [1, 2, 8, 3, 7, 9, 5, 7]
    # sort()方法没有返回值
    list_b = list_a.sort()
    print("list_a: ", list_a)
    print('list_b: ', list_b)

    运行结果:

    list_a:  [1, 2, 3, 5, 7, 7, 8, 9]
    list_b:  None

    用返回None来表示就地改动这个惯例有个弊端,那就是调用者无法将其串联起来。而返回一个新对象的方法则正好相反,它们可以链式调用,从而形成连贯接口。

    二、sorted内置函数

    与 list.sort 相反,内置函数sorted会新建一个列表作为返回值。

    这个方法可以接受任何形式的可迭代对象作为参数,甚至包括不可变序列或生成器,而不管sorted接受的是怎样的参数,它最后都会返回一个列表。

    代码示例:

    list_c = [1, 2, 8, 3, 7, 9, 5, 7]
    # sorted内置函数会返回一个排序后的新列表
    list_d = sorted(list_c)
    print("list_c: ", list_c)
    print('list_d: ', list_d)

    运行结果:

    list_c:  [1, 2, 8, 3, 7, 9, 5, 7]
    list_d:  [1, 2, 3, 5, 7, 7, 8, 9]

    可以看到,使用内置函数sorted时,返回了一个新的列表,而原列表没有发生改变。

    这有两种好处:

    1.如果我们即需要使用原列表,也需要使用排序后的列表,或者说我们要将一个非列表的可迭代对象排序成列表,sorted都可以做到

    2.有返回值时,我们可以进行链式调用

    # 可以对非列表的可迭代对象排序生成列表
    str_e = 'python'
    list_e = sorted(str_e)
    print(list_e)
    
    # 链式调用
    str_f = '-'.join(sorted(str_e)).upper().split('-')
    print(str_f)
    

    运行结果:

    ['h', 'n', 'o', 'p', 't', 'y']
    ['H', 'N', 'O', 'P', 'T', 'Y']

    三、关键字参数key和reverse

    不管是 list.sort 方法还是 sorted 函数,都有两个可选的关键字参数:

    key
    接收一个只有一个参数的函数,这个函数会被用在序列里的每一个元素上,所产生的结果将是排序算法依赖的对比关键字。

    比如说,在对一些字符串排序时,可以用 key=str.lower 来实现忽略大小写的排序,或者是用 key=len 进行基于字符串长度的排序。key的默认值是恒等函数,也就是默认用元素自己的值来排序。

    reverse:

    如果被设定为 True,被排序的序列里的元素会以降序输出(也就是说把最大值当作最小值来排序),reverse的默认值是 False.

    phone = ('HUAWEI', 'OPPO', 'MI', 'MEIZU', 'VIVO')
    # 按长度进行排序
    phone_list = sorted(phone, key=len)
    print(phone_list)
    
    phone_list_re = sorted(phone, key=len, reverse=True)
    print(phone_list_re)

    运行结果:

    ['MI', 'OPPO', 'VIVO', 'MEIZU', 'HUAWEI']
    ['HUAWEI', 'MEIZU', 'OPPO', 'VIVO', 'MI']

    上面的代码中,第一次排序新建了一个按照长度排序的字符串列表。第二次排序是将按长度排序由升序变成了降序。

    细心的您应该可以发现,第二次的结果并不是第一次排序的结果的完全翻转。

    OPPO和VIVO的长度都是4,reverse=True后,它们的相对位置跟第一次排序是一样的。这是什么原因呢?

    sorted和list.sort背后的排序算法都是Timsort,它是一种自适应算法,会根据原始数据的顺序特点交替使用插入排序和归并排
    序,以达到最佳效率。

    Python的排序算法Timsort是稳定的(知道这一点就可以了),意思是就算两个元素比不出大小,在每次排序的结果里它们的相对位置是固定的。

    因为用到的排序算法是稳定的,也就是说在长度一样时,OPPO和VIVO的相对位置不会改变。

    关于list.sort()方法和sorted内置函数的使用,现在已经掌握了~

     

     

    展开全文
  • python中list嵌套问题

    千次阅读 2020-02-29 00:08:33
    1、list加法 list1 = [[1],[2]] list2 = [[3],[4]] list3 = list1 + list2 print(list3) # [[1],[2],[3],[4]] [[4],[5],[6]]] 2、list合并 [[[1],[2],[3]], [[4],[5],[6]]] 合并成: [[1, 2, 3],[4, 5, 6]] ...
  • pythonList中使用for循环语句的技巧汇编

    千次阅读 多人点赞 2020-11-22 14:49:26
    for循环是最常用的循环语句,在各种高级编程语言都会被频繁使用,在python中也不例外, 除了常规的for循环或者嵌套的for循环语法以外,python还有一种精巧的list内的for循环语句的语法,如果能熟练掌握这种语法对...
  • Python中list和tuple的相互转换

    千次阅读 2019-03-01 15:35:54
    (1)list 转为 tuple: temp_list = [1,2,3,4,5] print(temp_list) print(type(temp_list)) a = tuple(temp_list) #将temp_list进行强制转换 print(a) print(type(a)) #查看是否转换成功 (2)tuple 转为 list...
  • Python中list的切片操作

    万次阅读 2019-04-29 14:53:10
    文章作者:Tyan ...|  CSDN  |  简书 ...Python中可以对list使用索引来进行切片操作,其语法(Python3)如下: a[:] # a copy of the whole array a[start:] # items start through th...
  • python list,numpy,tensor的互相转换

    千次阅读 多人点赞 2020-07-02 16:11:46
    print('##########建立 a-list;; b-numpy;; c- tensor##########') a = [1,2,3,4,5] b = np.array([1,2,3,4,5]) c = torch.arange(1,6) print('a-list:',a,'\n', 'b-ndarray:',b,'\n', 'c-tensor:',c,c.type()) ...
  • Python中list列表的动态筛选操作

    千次阅读 2018-09-10 18:33:52
    如下,有个list,对,就是这货。 bad_sents = ['此条工单内容显示:该市民反应的问题是'] sents = ['此条工单内容显示:该市民反应的问题是', '此条工单内容显示:该市民反应的问题是', '1、问题描述:平潮...
  • 最近刚开始学python中List,想问一下怎么打印出\n的效果? ![网上在线编译出来的效果](https://img-ask.csdn.net/upload/201910/28/1572227152_365318.png) 通过运行上述代码,我发现print里面是支持‘\n’...
  • Python中list的常用方法

    千次阅读 2018-04-17 19:22:06
    一,创建列表 只要把逗号分隔的不同的数据项使用方括号([])括起来即可下标(角标,索引)从0开始,最后一个元素的下标可以写-1list = ['1',‘2,‘3’]list= [] 空列表二,添加新的元素list.append()在list末尾...
  • pythonlist中随机取值

    万次阅读 多人点赞 2018-12-11 17:17:49
    list1 = ['佛山', '南宁', '北海', '杭州', '南昌', '厦门', '温州'] a = random.choice(list1) print(a) # 返回一个值 第二种方法 适用于随机取一组值, 返回一个list import random list1 = ['佛山', '南宁', .....
  • Python去除列表的重复元素

    万次阅读 多人点赞 2019-04-30 23:21:39
    Python去除列表的重复元素:三种方法 1.使用set去除重复元素 list1 = [1, 2, 5, 6, 7, 4, 8, 2, 7, 9, 4, 6, 3] list2 = list(set(list1)) print(list2) 输出结果如下: 会改变原列表元素的顺序。 [1, 2, 3, 4, 5...
  • python中list线程安全问题

    千次阅读 2020-03-17 14:17:18
    严格意义上说,只有操作才有是否安全的定义,因为线程是否安全,针对的不是对象,而是操作。 如果我们指这样的操作L[0]...举个list线程不安全的例子 import threading import time zero = [3] def change_zero...
  • Python concatenate list - Python list 拼接

    千次阅读 2019-03-06 19:22:25
    Python concatenate list Python list 拼接。 concatenate_python_list.py # -*- coding: utf-8 -*- ''' ============================================================================ Name : concatenate...
  • python中list转字符串

    千次阅读 2019-05-29 17:30:00
    其中,引号是字符之间的分割符,如“,”,“;”,“\t”等等 如: list = ["1", "2", "3", "4", "5"] ''.join(list) 结果即为:12345 ','.join(list) 结果即为:1,2,3,4,5 # 坑: list 里面的数据类型必须是...
  • python中list排序问题

    千次阅读 2018-08-02 14:22:15
    python实现list的排序方法 1、list列表排序 方法1.用list的内建函数list.sort进行排序 list.sort(func=None,key=None,reverse=False) 方法2.用序列类型函数sorted(list)进行排序 &gt;&gt;&gt;...
  • python中list用法及遍历删除元素

    万次阅读 2017-09-25 20:24:28
    列表(list)是python的基本数据结构,list中每一个元素都分配一个位置索引,可以通过索引访问元素值,list不要求数据项有相同的数据类型。 list初始化 list由一个方括号加内部由逗号分割出的不同数据项组成,初始化:...
  • python中 numpy转list list 转numpy

    千次阅读 2020-10-10 20:20:44
    list to numpy import numpy as np np.array(a) numpy to list a.tolist()
  • Python中list转换array的一个问题

    千次阅读 2019-05-14 21:03:40
    详细版本见个人博客:Python中list转换array的一个问题 我在数据分析过程需要将list转换为array,但是转换的过程出了一点问题,下面是记录。 一、list转换为array的方法 下面的a是一个list类型,如果要进行numpy...
  • python获取list中指定元素的index

    千次阅读 2020-04-20 10:50:34
    python 获取指定list中指定元素的index 方法一:利用数组自身的特性a.index(target) a=[11,2,3,21,22,33] print(a.index(2)) output:1 但是这种方法只能获取到第一个匹配到的value的下标 方法二:使用...
  • python 中list的初始化

    千次阅读 2019-05-22 20:30:10
    list1 = range(10) list2 = [0 for i in range(10)] for i in list1: print(i) for i in list2: print(i) 参考:https://www.cnblogs.com/zqifa/p/python-list.html
  • Python 中list 转string

    千次阅读 2018-06-14 17:08:05
    python中list转字符串命令:''.join(list)其中,引号是字符之间的分割符,如“,”,“;”,“\t”等等如:list = [1, 2, 3, 4, 5]''.join(list) 结果即为:12345','.join(list) 结果即为:1,2,3,4,5...
  • python中list与string的转换

    万次阅读 多人点赞 2019-05-15 13:00:14
    其中,引号是字符之间的分割符,如“,”,“;”,“\t”等等 如: list = [1, 2, 3, 4, 5] ''.join(list) 结果即为:12345 ','.join(list) 结果即为:1,2,3,4,5 str=[] #有的题目要输出字符串,但是有时候...
  • 删除Python中列表List里面的空值

    千次阅读 2020-09-23 17:58:31
    while ‘’ in list: list.remove(’’)
  • python中删除list中某指定元素

    万次阅读 多人点赞 2018-04-09 23:08:58
    python要删除一个列表的某个元素,知道这个元素是什么但不知道它的索引,就可以用list.romove 知道索引的话就可以用del来删除
  • Pythonlist中删除某个元素的三种方式 第一种:del命令。删除元素后续不再使用。 格式:del name[3] 第二种:.pop()。 保存删除的元素备用。 格式:popped_names = names.pop(3) 第三种:.remove()。 不知道位置...
  • Python中list列表的几种拷贝方式

    千次阅读 2019-05-12 08:52:49
    参考地址:Python: copying a list the right way list列表几种拷贝方式: import copy a = [[1,2],10,20] a1 = a #第1种 a2 = a[:] #第2种 a3 = list(a) #第3种 a4 = a*1 #第4种 a5 = copy.copy(a) #第5种 a6 =...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 1,106,897
精华内容 442,758
关键字:

python中list的作用

python 订阅