python 2.7 数据结构之列表list: 基础面试总结
python 列表函数及方法:
函数如下:
1 cmp(list1,list2) 比较两个列表中的元素
2 len(list) 列表元素个数
3 max(list) 返回列表元素最大值
4 min(list) 返回列表元素最小值
5 list(seq) 将元组转换成列表
方法如下:
1 list.append(obj) 在列表末尾添加新的对象
2 list.count(obj) 统计某个元素在列表中出现的次数
3 list.extend(seq) 在列表末尾一次性追加另一个序列中的多个值(用新列表扩展原来的列表)
4 list.index(obj) 从列表中找出某个值第一个匹配项的索引位置
5 list.insert(index,obj) 将对象插入列表中
6 list.pop([index=-1]) 移除列表中的一个元素(默认最后一个元素),并且返回该元素的值
7 list.remove(obj) 移除列表中某个值的第一个匹配项
8 list.reverse() 反向列表中元素
9 list.sort(cmp=None,key=None,reverse=False) 对原列表进行排序
10 判断元素是否存在列表中(面试说查找元素): x in list
代码演示:
函数如下:
1 cmp(list1,list2)
# list1=[1,2,3,4,5]
# list2=[1,2,3,4,5,6]
# list3=[1,2,3,4,5,6]
# cmp(list1,list2) #得 -1
# cmp(list2,list1) #得 1
# cmp(list3,list2) #得 0
2 len(list)
# list1=[1,2,3,4,5]
# len(list) #得5
3 max(list)
# list1=[1,2,3,4,5]
# max(list1) #得5
4 min(list)
# list1=[1,2,3,4,5]
# min(list1) #得1
5 list(seq)
# aTuple=(123,'xyz','zara','abc')
# alist=list(aTuple) #得[123,'xyz','zara','abc']
面试常问问题:
排序;最大值;最小值;去重;列表与元组之间数据类型转换;添加;移除元素;查找list长度;清空;判断元素是否存在(或者是查找);
1 list列表 排序
# alist=[123,'Google','Runoob','Taobao','Facebook']
# alist.sort()
# print alist # [123, 'Facebook', 'Google', 'Runoob', 'Taobao']
2 list列表排序:使用sort,设置降序
# alist=[123,'Google','Runoob','Taobao','Facebook']
# alist.sort(reverse=True)
# print alist # ['Taobao', 'Runoob', 'Google', 'Facebook', 123]
3 list列表通过指定列表中的元素排序来输出列表
#coding=utf-8
def takesecond(elem):
return elem[1]
random=[(2,2),(3,4),(4,1),(1,3)]
random.sort(key=takesecond)
print random # 得:[(4, 1), (2, 2), (1, 3), (3, 4)]
4 list列表最小值:
# min(list)
5 list列表最大值:
# max(list)
6 list列表去重:使用两个列表进行去重操作
# ids=[1,2,3,3,4,2,3,4,5,6,1]
# new_ids=[]
# for id in ids:
# if id not in news_ids:
# news_ids.append(id)
#print new_ids
7 list列表去重,使用set特性
# ids=[1,2,3,3,4,2,3,4,5,6,1]
# ids=list(set(ids))
8 列表与元组之间类型转换:
# list转元组 tuple(seq)
# 元组转list list(seq)
9 列表个数:
# len(list)
10 清空全部: list=[] #(2里面有[]空赋值操作,3里面有clear方法)
11 判断元素是否存在:x in list
参考文章:
http://www.runoob.com/manual/pythontutorial/docs/html/datastructures.html# python2.7.13 中文 数据结构
http://www.runoob.com/python/python-lists.html 菜鸟教程list列表
[本篇文章仅供学习交流参考]
面试是对以往知识的积累,总结。平日里多总结,多积累。
python 2.7 数据结构之列表list: 基础面试总结的更多相关文章
- python学习4—数据结构之列表、元组与字典
python学习4—数据结构之列表.元组与字典 列表(list)深灰魔法 1. 连续索引 li = [1,1,[1,["asdsa",4]]] li[2][1][1][0] 2. ...
- 小白学 Python(10):基础数据结构(列表)(下)
人生苦短,我选Python 前文传送门 小白学 Python(1):开篇 小白学 Python(2):基础数据类型(上) 小白学 Python(3):基础数据类型(下) 小白学 Python(4):变 ...
- Python开发【数据结构】:基础
数据结构 什么是数据结构? 简单来说,数据结构就是设计数据以何种方式组织并存储在计算机中. 比如:列表.集合与字典等都是一种数据结构 N.Wirth: “程序=数据结构+算法” 列表 列表:在其他编程 ...
- Python学习笔记(3)--数据结构之列表list
Python的数据结构有三种:列表.元组和字典 列表(list) 定义:list是处理一组有序项目的数据结构,是可变的数据结构. 初始化:[], [1, 3, 7], ['a', 'c'], [1, ...
- Python中3种内建数据结构:列表、元组和字典
Python中3种内建数据结构:列表.元组和字典 Python中有3种内建的数据结构:列表.元组和字典.参考简明Python教程 1. 列表 list是处理一组有序项目的数据结构,即你可以在一个列表中 ...
- Python常用数据结构(列表)
Python中常用的数据结构有序列(如列表,元组,字符串),映射(如字典)以及集合(set),是主要的三类容器 内容 序列的基本概念 列表的概念和用法 元组的概念和用法 字典的概念和用法 各类型之间的 ...
- 小白学 Python 爬虫(14):urllib 基础使用(四)
人生苦短,我用 Python 前文传送门: 小白学 Python 爬虫(1):开篇 小白学 Python 爬虫(2):前置准备(一)基本类库的安装 小白学 Python 爬虫(3):前置准备(二)Li ...
- Python 中的数据结构总结(一)
Python 中的数据结构 “数据结构”这个词大家肯定都不陌生,高级程序语言有两个核心,一个是算法,另一个就是数据结构.不管是c语言系列中的数组.链表.树和图,还是java中的各种map,随便抽出一个 ...
- 【转载】Python编程中常用的12种基础知识总结
Python编程中常用的12种基础知识总结:正则表达式替换,遍历目录方法,列表按列排序.去重,字典排序,字典.列表.字符串互转,时间对象操作,命令行参数解析(getopt),print 格式化输出,进 ...
随机推荐
- Python——Flask框架
Flask框架相关知识构架 程序的基本结构 模板 Web表单 数据库 电子邮件 程序的结构 用户认证
- MySQL聚簇索引和非聚簇索引的对比
首先要清楚:聚簇索引并不是一种单独的索引类型,而是一种存储数据的方式. 聚簇索引在实际中用的很多,Innodb就是聚簇索引,Myisam 是非聚簇索引. 在之前我想插入一段关于innodb和myisa ...
- linux 实现centos7在线升级最新版本内核
Kernel (内核)是操作系统的核心,掌握所有硬件设备的控制权,也就是说,你所希望计算机帮你完成的各项工作,都需要通过内核的帮助才能完成,当然,如果我们想完成的某个功能是内核没有的,则内核不会操控 ...
- EntityManagerFactory 是多线程的 将其变成一个单线程(使用静态方法)提交效率
由于EntityManagerFactory 是一个线程安全的对象(即多个线程访问同一个EntityManagerFactory 对象不会有线程安全问题),并且EntityManagerFactory ...
- mysql 如何优化left join
今天遇到一个left join优化的问题,搞了一下午,中间查了不少资料,对MySQL的查询计划还有查询优化有了更进一步的了解,做一个简单的记录: select c.* from hotel_info_ ...
- 10.2 Vue 环境安装
Vue 环境安装 环境准备 nodejs 下载安装 https://nodejs.org/en/ 查看下载版本 C:\>node -v v7.6.0 C:\>npm -v 4.1.2 ...
- 配置sudo记录日志
sudosudo命令用来以其他身份来执行命令,预设的身份为root.在/etc/sudoers中设置了可执行sudo指令的用户.若其未经授权的用户企图使用sudo,则会发出警告的邮件给管理员.用户使用 ...
- js jquery 判断元素是否在数组内(转)
一,js方法 var arr = ["a", "b", "c"]; // js arr.indexOf("c") var ...
- Java多线程_复习(更新中!!)
java多线程的常见例子 一.相关知识: Java多线程程序设计到的知识: (一)对同一个数量进行操作 (二)对同一个对象进行操作 (三)回调方法使用 (四)线程同步,死锁问题 (五)线程通信 等等 ...
- MongoDB 3.6.9 集群搭建 - 切片+副本集
1. 环境准备 在Mongo的官网下载Linux版本安装包,然后解压到对应的目录下:由于资源有限,我们采用Replica Sets + Sharding方式来配置高可用.结构图如下所示: 这里我说明下 ...