在python中,[]表示的是列表。列表有各种操作命令。

1、append()方法,添加一个元素到列表尾部。

注意append()方法与extend()方法有区别:list.append(object) 向列表中添加一个对象object而list.extend(sequence) 把一个序列seq的内容添加到列表中

例如:

 names=["hongtao","xiaoweihong","hongyuchan",["show530","luby"],"hongpingshui","guochaoxi"]
names2=["liuyi","zhangsong"] names.extend(names2)
print(names) >>>>>>>
['hongtao', 'xiaoweihong', 'hongyuchan', ['show530', 'luby'], 'hongpingshui', 'guochaoxi', 'liuyi', 'zhangsong']
___________________________________________________ names=["hongtao","xiaoweihong","hongyuchan",["show530","luby"],"hongpingshui","guochaoxi"]
names2=["liuyi","zhangsong"] names.append(names2)
print(names) >>>>>>>>>
['hongtao', 'xiaoweihong', 'hongyuchan', ['show530', 'luby'], 'hongpingshui', 'guochaoxi', ['liuyi', 'zhangsong']]

2、关于 remove(),pop(),以及del列表操作的相同点和不同点:

(1)remove 是删除首个符合条件的元素。并不是删除特定的索引。

>>> a = [0, 2, 2, 3]

>>> a.remove(2)

>>> a

[0, 2, 3]

(2)对于 del 来说,它是根据索引(元素所在位置)来删除的。

>>> a = [3, 2, 2, 1]

>>> del a[1]

[3, 2, 1]

(3)pop返回的是你弹出的那个数值。

>>> a = [4, 3, 5]

>>> a.pop(1)

3

>>> a

[4, 5]

3、关于深度COPY和浅度COPY的区别:

简单地说,深度COPY就是把A列表简单的复制一份,跟A列表一模一样。而浅度COPY复制的时候遭遇到列表中包含列表的情况的话,他只复制内存地址。

例如以下代码:

 import copy
names=["hongtao","xiaoweihong","hongyuchan",["show530","luby"],"hongpingshui","guochaoxi"]
names2=copy.copy(names)
names[3][0]="SHOW530"
names[3][1]="LUBY"
print(names2) 输出结果>>>>>>> ['hongtao', 'xiaoweihong', 'hongyuchan', ['SHOW530', 'LUBY'], 'hongpingshui', 'guochaoxi'] import copy
names=["hongtao","xiaoweihong","hongyuchan",["show530","luby"],"hongpingshui","guochaoxi"]
names2=copy.deepcopy(names)
names[3][0]="SHOW530"
names[3][1]="LUBY"
print(names2) 输出结果>>>>>>> ['hongtao', 'xiaoweihong', 'hongyuchan', ['show530', 'luby'], 'hongpingshui', 'guochaoxi']

4、关于列表中元素的位置表示方法及间隔

names[0:-1] 表示从列表names中第一个元素到最后一个元素;

names[0:-1:2] 表示从列表names中第一个元素到最后一个元素,步长为2,每个元素间隔1

names[0:-1:2]有时也会简写成names[::2]如果步长是1,那么可以简写为names[:]

python学习(7)关于列表操作相关命令以及浅复制深复制的更多相关文章

  1. IDEA环境下GIT操作浅析之二-idea下分支操作相关命令

    上次写到<idea下仓库初始化与文件提交涉及到的基本命令>,今天我们继续写IDEA环境下GIT操作之二--idea下分支操作相关命令以及分支创建与合并. 1.idea 下分支操作相关命令 ...

  2. Redis中LIST列表的相关命令

    Redis中LIST列表的相关命令 添加 lpush 将一个或多个value插入到key的表头,如果存在多个value,那么各个value按从左到右的顺序依次插入表头 插入表头:意味着新插入的值在最前 ...

  3. Python学习杂记_5_列表常用操作

    列表操作 列表时用方括号括起来的一组元素值,是可变变量,可通过下表取值,也可以通过下表来修改值,列表中的元素是有序的,可以是不同的基本数据类型,如: names=[1, 2, 3, “abc”, “d ...

  4. 【Python学习之六】文件操作

    环境 虚拟机:VMware 10 Linux版本:CentOS-6.5-x86_64 客户端:Xshell4 FTP:Xftp4 python3.6 一.文件的打开与关闭 使用open函数,可以打开一 ...

  5. python学习笔记整理——列表

    Python 文档学习笔记 数据结构--列表 列表的方法 添加 list.append(x) 添加元素 添加一个元素到列表的末尾:相当于a[len(a):] = [x] list.extend(L) ...

  6. Python学习---Django的基础操作180116

    Django创建数据库操作 django流程之model实例 settigs.py:更改Django2.0.1的配置,更新为之前的路径配置 'DIRS': [os.path.join(BASE_DIR ...

  7. python学习笔记(2)--列表、元组、字符串、字典、集合、文件、字符编码

    本节内容 列表.元组操作 字符串操作 字典操作 集合操作 文件操作 字符编码与转码 1.列表和元组的操作 列表是我们以后最长用的数据类型之一,通过列表可以最方便的对数据实现最方便的存储.修改等操作 定 ...

  8. redis入门指南(二)—— 数据操作相关命令

    写在前面 以下绝大部分内容取材于<redis入门指南>,部分结合个人知识,实践后得出. 只记录重要,明确,属于新知的相关内容,杜绝冗余和重复. 字符串 1.字符串类型是redis中最常见的 ...

  9. Linux学习记录--文件IO操作相关系统编程

    文件IO操作相关系统编程 这里主要说两套IO操作接口,各自是: POSIX标准 read|write接口.函数定义在#include<unistd.h> ISO C标准 fread|fwr ...

随机推荐

  1. 【转】Twitter算法面试题详解(Java实现)

    原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 .作者信息和本声明.否则将追究法律责任.http://androidguy.blog.51cto.com/974126/1319659 ...

  2. C# 使用nuget.exe发布类库及更新类库

    前景:在开发学习阶段希望一些重复使用代码或者算法代码积累.能够在VS中下载安装方便使用. 准备工作: 1.Nuget登录账号(可 Microsoft 账号).Nuget官网 2.Nuget.exe程序 ...

  3. 重拾c++第一天(1):环境配置

    时过多年,c++基本不记得了,故在此记录相关重拾记录. 学习语言第一步当然是环境配置了(笑),由于暂无用c++进行大型项目开发的需求,所以先下载dev进行过渡. 安装过程非常简单,值得注意的是配置时选 ...

  4. Spring中bean的实例化过程

    1.从缓存中.优先从一级缓存中拿,有则返回. 如果没有,则从二级缓存中获取,有则返回. 如果二级缓存中拿不到,则从三级缓存中拿,能拿到,则从三级缓存中删除,移到二级缓存. 如果三级缓存也没有,则返回n ...

  5. RTC时间设置

    1.命令行输入date,查看系统时间. 2.命令行输入 date -s "2019-01-21 16:03:00" 修改系统时间. 3.命令行输入 hwclock -w 将修改后的 ...

  6. PHP——常量

    一.什么是常量 常量可以理解为值不变的量(如圆周率)或者是常量值被定义后,在脚本的其他任何地方都不可以被改变.PHP中的常量分为自定义常量和系统常量,自定义常量是根据我们开发的需要,而定义的常量,它通 ...

  7. 《ASP.NET Core 高性能系列》关于.NET Core的部署方式

    概述,.NET Core应用程序可以创建三种类型的部署:FDD SCD FDE 框架依赖的部署(FDD).顾名思义,框架依赖的部署(FDD)依赖于目标系统上是否存在.NET Core版本.由于.NET ...

  8. 创建dynamics CRM client-side (八) - 获取attribute的值 和 设置disable

    大家可以用下面的方式来获取attribute的值 formContext.getAttribute("address1_shippingmethodcode").getText() ...

  9. Qt Installer Framework翻译(7-6)

    工具 Qt Installer Framework包含以下工具: > installerbase > binarycreator > repogen > archivegen ...

  10. 分享一下我在mysql5.6+mysql8数据库安装过程中的一些坑!

    Mysql5.6安装 下载好安装包后,在bin目录下用cmd打开,输入mysqld install [服务名]新建个服务 在windows+r输入services.msc即可查看服务 怎样使用mysq ...