对Python 3.5拼接列表的新语法详解

yipeiwu_com5年前Python基础

在Python 3.5之前的版本,拼接列表可以有这两种方法:

1、列表相加

list1 = [1,2,3]
list2 = [4,5,6]
result = list1 + list2

结果为一个新的列表

2、在原来列表上扩展

list1 = [1,2,3]
list2 = [4,5,6]
list1.extend(list2)

list1扩展后,结果为[1,2,3,4,5,6]

3、新语法

如果列表是由range()生成:

list1 = [1,2,3]
list2 = range(4,6)
result = list1+list2

那么列表直接相加会报错:

TypeError: can only concatenate list (not 'range') to list

新语法为Python3.5+

list1 = [1,2,3]
list2 = range(4,6)
result = [*list1,*list2]

这种语法称为Additional Unpacking Generalizations,在列表前加上星号*,表示解包列表。

以上这篇对Python 3.5拼接列表的新语法详解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

Python实现模拟时钟代码推荐

Python实现模拟时钟代码推荐 # coding=utf8 import sys, pygame, math, random from pygame.locals import *...

使用50行Python代码从零开始实现一个AI平衡小游戏

使用50行Python代码从零开始实现一个AI平衡小游戏

  集智导读: 本文会为大家展示机器学习专家 Mike Shi 如何用 50 行 Python 代码创建一个 AI,使用增强学习技术,玩耍一个保持杆子平衡的小游戏。所用环境为...

对Python 除法负数取商的取整方式详解

python除法负数商的取整方式与C++不同 python: 5 / -2 = -3 若想和C++行为相同,可以使用 int(operator.truediv(num1, num2...

基于python的多进程共享变量正确打开方式

多进程共享变量和获得结果 由于工程需求,要使用多线程来跑一个程序。但是因为听说python的多线程是假的,于是使用多进程,反正任务需要共享的参数少。 查阅资料,发现实现多进程主要使用Mu...

深入理解Python3中的http.client模块

http 模块简介 Python3 中的 http 包中含有几个用来开发 HTTP 协议的模块。 http.client 是一个底层的 HTTP 协议客户端,被更高层的 urlli...