Python基础知识:列表
1、pop(i)删除列表任意位置元素,并继续使用它,如果括号为空,默认删除末尾
#pop()函数
guests=['Liming','Liuhan','Hanjieming']
for guest in guests:
print("I want to invite "+guest+" to have dinner with me.")
break_man=guests.pop(1)
print(break_man.title()+" can't keep the appointment.")
print(guests)
2、insert(位置,值)列表中按位置和值添加元素
#insert(位置,值)
new_guest="Hutian"
guests.insert(1,new_guest)
for guest in guests:
print("I want to invite "+guest+" to have dinner with me.")
print("\nI find a bigger table.\n")
guests.append("Xiaxue") #append()从末尾插入列表
print(guests)
3、del 删除列表中的任意元素
del guests[0]
print(guests)
4、切片:输出列表的一部分
#输出列表的一部分
students=['xiaoming','liuxing','huyu','huangniu','qiaogu']
print(students[:3])#前三个
print(students[3:])#从第四个到最后
print(students[-3:])#后三个
print(students[1:3])#第二个到第三个
#for循环,输出前三名学生的名字
print("\nThe first three students is:")
for student in students[:3]:
print(student.title())
5、sort()永久性排序;sorted()临时性排序
week_scores=['','','','','']
print(sorted(week_scores))
week_scores.sort(reverse=True)#倒序排列
print(week_scores)
week_scores.sort(reverse=False)#升序排列
print(week_scores)
6、reverse()倒着打印列表,只是翻转列表,并未排序
week_scores.reverse()
print(week_scores)
7、[:]使用切片复制整个列表
month_scores=week_scores[:]
print(month_scores)
8、len()确定列表长度,len可以求任何东西的长度
print(len(week_scores))
9、元组(tuple)内的元素不可修改,只能重新赋值
#元组
menu=('noodles','rice','steak','coke','bread')
for food in menu:
print(food)
new_menu=('noodles','rice','steak','coke','milk')
for new_food in new_menu:
print("\n",new_food)
10、list(range(1,5))创建数值列表
list(range(1,11,2))按指定步长创建数值列表,输出前十个奇数列表
#创建一个1-5的数值列表
numbers=range(1,5)
print(list(numbers))
#按指定步长创建数值列表
even_numbers=list(range(1,11,2))
print(even_numbers)
11、(**)两个星号表示乘方运算
#乘方运算
squares=[]
for value in range(1,11):
squares.append(value**2)
print(squares)
print(min(squares))#求最小值
print(max(squares))#求最大值
print(sum(squares))#求数值总和
12、列表解析:将for循环和创建新元素的代码合并为一行,并自动添加到列表
#将前10个数的平方依次加入列表
squares=[value**2 for value in range(1,11)]
print(squares)
13、count()统计个数和index()返回索引,判断列表中是否存在一个值,并替换它
#count()统计个数和index()索引
number = [10,22,33,10]
print(10 in number)
if 10 in number:
num_of_ten=number.count(10)#返回列表中10的个数
print("[%s] 10 is/are in number."%num_of_ten)#判断列表中有几个指定的值
#替换列表中的所有10
for i in range(num_of_ten):
ten_index=number.index(10)#返回索引
number[ten_index]=10000
print(number)
14、copy列表,修改原表和新表的值,互不影响;
列表中嵌套的列表只是一个地址,无论修改原列表中还是复制列表中的嵌套列表,嵌套的列表中的
值都会被改变。如果想改变嵌套列表中的值时,两个列表互不影响,就要使用函数deepcopy()
#调出copy库
import copy
number=[10,22,56,[33,10,45],99,34]
number2=number.copy() #普通copy
number[1]=200
number2[1]=500
number[3][0]=''
number2[3][1]=''
print(number)
print(number2)
#深度copy,完全复制嵌套列表中的数值,两个列表互不影响
number3=copy.deepcopy(number)
number[3][0]='aaa'
number3[3][1]='jjjj'
print(number)
print(number3)
15、extend()扩展列表
#将括号内的列表加到第一个列表末尾
num=[1,2]
num2=[1,2,3]
num.extend(num2)
print(num)
16、enumerate()以枚举的方式打印列表的下标和元素
#枚举,返回索引和值
a = ['alex','alice','james']
for index,i in enumerate(a):
print(index,i)
17、删除列表中的重复值
#第一种方法,集合set(),顺序会变
numbers = [11,22,6,13,6,11,58,22]
numbers2 = list(set(numbers) )
print(numbers2)
#第二种集合法,按照原来列表的索引重新排序
numbers2 = list(set(numbers) )
numbers2.sort(key=numbers.index)
print(numbers2)
#第三种方法保留原来的顺序,从前往后删
numbers = [11,22,6,13,6,11,58,22]
for i in numbers:
if numbers.count(i) > 1:
numbers.remove(i)
print(numbers)
18、练习题:删除列表中重复3次及以上的数值
list=[1,1,1,2,2,2,3,3,4,4]
for i in list:
if list.count(i)>2:
list.remove(i)
print(list)
19、练习题:将一个列表中重复3次以下的数值插入到另一个列表中,且不能重复
list=[1,1,1,2,2,2,3,3,4,4]
list2=[]
for i in list:
if list.count(i) < 3:
if i not in list2:
list2.append(i)
print(list2)
20、练习题:for循环猜年龄
#for循环练习
age=26
counter=0
for i in range(10):
print("--counter:",counter)
if counter <3:
guess_number=int(input("your guess number:"))
if guess_number==age:
print("Congretulations,you got it!")
break
elif guess_number>age:
print("Think smaller.")
else:
print("Think bigger.")
else:
continue_confirm=input("do you want to try continue:")
if continue_confirm=="y":
counter=0
continue
else:
break
counter=counter+1
Python基础知识:列表的更多相关文章
- python 基础知识 列表的 增删改查 以及迭代取值
""" python 列表 通用方法 元组.数组.字典 取值方法 [] 列表中可以存储不同类型的数据 函数 封装了独立的功能可以直接调用 函数名(参数) 方法 和函数类似 ...
- python基础知识-列表,元组,字典
列表(list) 赋值方法: l = [11,45,67,34,89,23] l = list() 列表的方法: #!/usr/bin/env python class list(object): & ...
- Python基础知识--列表和集合
列表:有序性,可以存放任意类型的对象,通过索引访问,可以分片操作 >>> L = ['id', 1000, 'scd', 1000, 'scd'] >>> L [' ...
- python基础知识-列表的排序问题
def main(): f=['orange','zoo','apple','internationalization','blueberry'] #python 内置的排序方式默认为升序(从小到大) ...
- python爬虫主要就是五个模块:爬虫启动入口模块,URL管理器存放已经爬虫的URL和待爬虫URL列表,html下载器,html解析器,html输出器 同时可以掌握到urllib2的使用、bs4(BeautifulSoup)页面解析器、re正则表达式、urlparse、python基础知识回顾(set集合操作)等相关内容。
本次python爬虫百步百科,里面详细分析了爬虫的步骤,对每一步代码都有详细的注释说明,可通过本案例掌握python爬虫的特点: 1.爬虫调度入口(crawler_main.py) # coding: ...
- Python开发【第二篇】:Python基础知识
Python基础知识 一.初识基本数据类型 类型: int(整型) 在32位机器上,整数的位数为32位,取值范围为-2**31-2**31-1,即-2147483648-2147483647 在64位 ...
- python 基础知识(一)
python 基础知识(一) 一.python发展介绍 Python的创始人为Guido van Rossum.1989年圣诞节期间,在阿姆斯特丹,Guido为了打发圣诞节的无趣,决心开发一个新的脚本 ...
- python 爬虫与数据可视化--python基础知识
摘要:偶然机会接触到python语音,感觉语法简单.功能强大,刚好朋友分享了一个网课<python 爬虫与数据可视化>,于是在工作与闲暇时间学习起来,并做如下课程笔记整理,整体大概分为4个 ...
- python基础知识小结-运维笔记
接触python已有一段时间了,下面针对python基础知识的使用做一完整梳理:1)避免‘\n’等特殊字符的两种方式: a)利用转义字符‘\’ b)利用原始字符‘r’ print r'c:\now' ...
- Python基础知识(五)
# -*- coding: utf-8 -*-# @Time : 2018-12-25 19:31# @Author : 三斤春药# @Email : zhou_wanchun@qq.com# @Fi ...
随机推荐
- SQL 必知必会·笔记<17>使用存储过程
存储过程就是为以后使用而保存的一条或多条SQL 语句.可将其视为批文件,虽然它们的作用不仅限于批处理. 1. 存储过程的优点和缺点 存储过程的优点: 使用存储过程有三个主要的好处,即简单.安全.高性能 ...
- Spring Boot + Spring Cloud 实现权限管理系统 后端篇(十七):登录验证码实现(Captcha)
登录验证码 登录验证是一般系统都会有的功能,验证的方式也多种多样,比如输入式验证码,拖动式验证条,拖动式验证拼图等等. 我们这里先实现常规的输入验证码的方式,右边显示验证码图片,点击可刷新,左边输入验 ...
- Vue + Element UI 实现权限管理系统 前端篇(十三):页面权限控制
权限控制方案 既然是后台权限管理系统,当然少不了权限控制啦,至于权限控制,前端方面当然就是对页面资源的访问和操作控制啦. 前端资源权限主要又分为两个部分,即导航菜单的查看权限和页面增删改操作按钮的操作 ...
- MongoDB 常用的几大GUI工具
MongoDB 常用的几大GUI工具 MongoDBCompass (官方的连接工具),免费的,界面简洁,不支持 sql 查询,支持性能监控.支持在三大平台 Windows .Mac .Linux 上 ...
- Haproxy+Heartbeat 高可用集群方案操作记录
之前详细介绍了haproxy的基础知识点, 下面记录下Haproxy+Heartbeat高可用web集群方案实现过程, 以加深理解. 架构草图如下: 1) 基本环境准备 (centos6.9系统) 1 ...
- Java关键字(一)——instanceof
instanceof 严格来说是Java中的一个双目运算符,用来测试一个对象是否为一个类的实例,用法为: boolean result = obj instanceof Class 其中 obj 为一 ...
- Nginx反代Mogilefs分布式储存示例
一.分布式存储系统简介 随着信息技术不断的发展,给我们带来便利的同时,不断增加的数据量级.信息之间的连接关联越来越复杂.数据访问的并发量日益增加对I/O的要求越来越高.数据类型越来越复杂等难题也成为信 ...
- Java 使用 happen-before 规则实现共享变量的同步操作
前言 熟悉 Java 并发编程的都知道,JMM(Java 内存模型) 中的 happen-before(简称 hb)规则,该规则定义了 Java 多线程操作的有序性和可见性,防止了编译器重排序对程序结 ...
- SQL SERVER 如何声明一个变量
DECLARE @i AS INT; ; GO 或者 ; GO 表表达式形式 ); SET @empname = (SELECT firstname + N' ' + lastname FROM HR ...
- 贝尔数(来自维基百科)& Stirling数
贝尔数 贝尔数以埃里克·坦普尔·贝尔(Eric Temple Bell)为名,是组合数学中的一组整数数列,开首是(OEIS的A000110数列): Bell Number Bn是基数为n的集合 ...