list,tuple,set,dict基础
list
# @Auther : chen
# @Time : 2018/4/26 19:55
# @File : list_ex.py
# @SoftWare : PyCharm # list1 = [1,2,3,4,5,6,7,8,9,0]
# random.shuffle(list1)
# print(list1)
# for i in list1:
# print(i) name_list = ['alex','bill','chris','eve','frank','ray','suker']
name_iter=iter(name_list)
print(name_iter.__next__())
# print(name_list.index('chris'))
# name_list.insert(4,'jack')#指定位置插入
# print(name_list)
# name_list.reverse()#list 反转
# print(name_list)
# name_list.remove('eve')#删除指定的值
# print(name_list)
# name_list.pop()#删除一个列表尾部数据
# name_list.sort()#按顺序排列原list
# chg_list = sorted(name_list)#排序
# name_list.append('alex')#尾部追加
# print(name_list)
#删除列表中指定的值
# for val in range(name_list.count('alex')):
# name_list.remove('alex')
# print(name_list)
#切片 顾头不顾尾
# list_src = [1,2,3,4,5,6,7,8,9,0]
# print(list_src[0:3])
# print(list_src[:3])
# print(list_src[-3:-1])
# print(list_src[-3:])
# print(list_src[0:9:3])
#列表拼接
# name_list = name_list + list_src
# print(name_list)
# list_src.extend(name_list)
# print(list_src)
# list1 = [0,1,2,3,4,5,6,7,8,9,0]
# list2 = 'ray chen'
# list1.extend(list2)
# print(list1)
# list3 = []
# list3.extend(list2)
# print(list3)
#元组和列表互转
list1 = ['alex','suker','flex']
print(list1.count('alex'))
tuple1 = tuple(list1)
print(list1,tuple1)
list2 = list(tuple1)
print(list2,tuple1) '''
import copy
list1 = [1,2,3,4,5]
list2 = ['a','b','c','d']
for ele in zip(list1,list2):
print(ele)
p1 = ['name',['age',170],'male']
p2 = list(p1)
p2[0] = 'name2'
p2[1][1] = 175
print('--result2--')
print(p1,p2)
p3 = copy.copy(p1)
p3[0] = 'name3'
p3[1][1] = 180
print('--result3--')
print(p1,p3)
p4 = p1[:]
p4[0] = 'name4'
p4[1][1] = 185
print('--result4--')
print(p1,p3)
p5 = p1
p5[0] = 'name5'
p5[1][1] = 190
print('--result5--')
print(p1,p5)
p6 = copy.deepcopy(p1)
p6[0] = 'name6'
p6[1][1] = 195
print('--result6--')
print(p1,p6)
'''
'''
#浅COPY
p1 = ['name',['age',170],'male']
p2 = list(p1)
p2 = copy.copy(p1)
p2 = p1[:]
p2 = p1 '''
'''
L1 = ['A','B','C',['D','E','F'],'G']
L2 = L1.copy()
L2[3][2] = 'F1'
print(L1,L2)
'''
'''
L1 = [1,2,3]
L2 = L1.copy()
L2[1] = 0
print(L1,L2)
'''
'''
import copy
L1 = [1,2,3]
L2 = copy.deepcopy(L1)#copy 一份独立的列表
L2[1] = 0
print(L1,L2)
'''
'''
L1 = [1,2,3]
L2 = L1
L2[1] = 0
print(L1,L2)
'''
'''
L1 = ['A','B','C',['D','E','F'],'G']
L2 = L1.copy()
print(L1,L2)
L1[2] = 'C1'
print(L1,L2)
L1[3][2] = 'F1'
print(L1,L2)
L2[2] = 'B1'
print(L1,L2)
L2[3][1] = 'D1'
print(L1,L2)
'''
'''
L = ['a','b','c','d','e','f']
# insert add
L1 = L.insert(1,'0')
L2 = L.append('g')
#modify
L3 = L[0] = '1'
#delete
L4 = L.remove('g')
L5 = L.pop()
del L[0]
#切片
print(L)
print(L[:5]) #取前5个 == print(L[0:5])
print(L[1:5]) #从下标1取到下标4(顾头不顾尾)
print(L[4]) #取第4个元素
print(L[-1])#取最后一个元素
print(L[-3:])#取最后3个元素
print(L[-3:-1])# 取倒数第二和第三个元素
print(L.count('e'))
L.reverse() #反转
L.sort()#排序
sorted(L)#排序
L.index('e')#打印元素索引
L.extend(L5) #拼接2个列表
print(L)
L6 = L.copy()#复制列表
L.clear()#清空
del L #删除列表
'''
tuple
#tuple比list好的地方
#1.性能优化(immutable会作为常量在编译时确定)(immutable--不可变)
#2.线程安全
#3.可以作为dict的key
#4.可拆包
#tuple 拆包
user_tuple1 = ('ray',27,170)
name,age,height = user_tuple1
print(name,age,height)
user_tuple2 = ('ray',27,170,'shiyan','college')
name,*other = user_tuple2
print(name,other)
#tuple不可变性不是绝对的
user_tuple3 = ('ray',[27,'shiyan'])
print(user_tuple3)
user_tuple3[1].append('college')
print(user_tuple3)
user_dict = {}
user_dict[user_tuple1] = 'ray'
set
#list 转 set
list_1 = [1,3,5,7,9,11,13]
list_1 = set(list_1)
list_2 = {3,7,9,11,2,4,6}
#交集
print(list_1.intersection(list_2))
print(list_1 & list_2)
#并集
print(list_1.union(list_2))
print(list_1 | list_2)
#差集
print(list_1.difference(list_2))
print(list_1 - list_2)
#子集/父集
print(list_1.issubset(list_2))
print(list_1.issuperset(list_2))
#对称差集(两个集合中互相不存在的)
print(list_1.symmetric_difference(list_2))
print(list_1 ^ list_2)
#添加
string
str1 = 'good good study,day day up'
print(str1.capitalize()) # 首字母大写
print(str1.center(50,'-'))
list1 = ['1','2','3']
print('+'.join(list1))
dict
list,tuple,set,dict基础的更多相关文章
- Python3 与 C# 基础语法对比(List、Tuple、Dict、Set专栏)
Code:https://github.com/lotapp/BaseCode 多图旧版:https://www.cnblogs.com/dunitian/p/9156097.html 在线预览: ...
- Python3 与 NetCore 基础语法对比(List、Tuple、Dict、Set专栏)
Jupyter最新版:https://www.cnblogs.com/dotnetcrazy/p/9155310.html 在线演示:http://nbviewer.jupyter.org/githu ...
- python 容器类型数据 (str list tuple set dict)
# ###容器类型数据(str list tuple set dict) var1 = "今天心情非常美丽" var2 = [1,2,3,4] var3 = ("黄将用& ...
- python基本数据类型(容器)- tuple list dict set
tuple list dict set统称为“容器” 1. 元组tuple 列表list: 1.1 同:元组( ).列表[ ] 都是有序的 1.2 异:元组不能修改,列表可以修改 1.3 注意⚠:如果 ...
- Python之list、tuple、dict、set
参考原文 廖雪峰Python PS:来看看Python中比较特殊的几种数据类型list.tuple.dict.set list list(列表)是Python内置的一种数据类型,它是一种有序.可变的集 ...
- Python学习日记(四)——Python基本数据类型梳理(int、str、list、tuple、dict)
数字(int) 1.创建方式 n1 = 123 n2 = int(123) 2.内存分配 #共同用一个内存地址的情况 n1 = 123 n2 = n1 #用两个内存地址的情况 n1 = 123 n2 ...
- Python学习记录6-list、tuple、dict、set复习
数据类型在一门语言中是非常重要的,所以选择再次学习一下加深记忆.本次主要参考了大神廖雪峰的官方网站,非常感谢大神,讲的很清晰,收获很大. 标准数据类型 Number(数字) String(字符串) L ...
- Python基础-list,tuple,dict,set常用方法及区别
1,列表list 列表定义方式 lis1=[1,2,3,4]#一维数组 lis2=[1,2,3,[4,5,6]]#二维数组 依次多有多维数据,套几层就是几维数组 列表的取值可以通过下标来,下标都是从0 ...
- python基础复习-1-2 数据类型-str、list、tuple、dict
数据类型 数字 引号: 123 数值 '123' 字符串 整数:ini long 范围:(-2**31 - 2**31) num = 123 长整型 long (L) num = 123L 浮点型:f ...
随机推荐
- JVM —— 类文件结构(上)
一.概述 实现语言无关性的基础仍然是虚拟机和字节码存储格式.java虚拟机不和包括java在内的任何语言绑定,它只与“Class文件”这种特定的二进制文件格式所关联,Class文件中包含了java虚拟 ...
- java中不常见的关键字:strictfp
1.strictfp, 即 strict float point (精确浮点). strictfp 关键字可应用于类.接口或方法.使用 strictfp 关键字声明一个方法时,该方法中所有的float ...
- go hello world第一个程序
main 函数所在的包名必须使用main import "fmt" 导入包fmt fmt包包含了Println方法的定义 func main() 程序运行入口方法和c语言相似 ...
- Unicode 编码 范围
目录 所有字符 文字部分 ( U+0000 – U+007F) 基本拉丁字符 ( U+0080 – U+00FF) 增补拉丁字符集 1 ( U+0100 – U+017F) 拉丁字符扩展集 A ( U ...
- 一个农民工自学java找到工作的励志故事
<!-----------------------------------------------------------------------------摘自网络-------------- ...
- Kafka集群安装及prometheus监控
前提 zookeeper安装参考:https://www.cnblogs.com/JustinLau/p/11372782.html 其他安装参考:https://www.cnblogs.com/lu ...
- SpringBoot 第二篇:SpringBoot配置文件使用
背景 项目跑起来,和以前相比,现在的配置文件能干什么?SpringBoot 项目的配置文件就是创建项目时,自带的 application.properties ,打开里面空空如也.这个文件里面的语法是 ...
- Redis的bind的误区(转)
原文1:https://blog.csdn.net/cw_hello1/article/details/83444013 原文2:https://www.cnblogs.com/suiyueqiann ...
- IE浏览器下载后台返回的Excel文件,报错400
问题描述(见下图): 问题分析: 400是后端没有接收到请求 原因是后端高版本的tomcat不会自动对字符串进行转义 所以,前端把参数值进行转义,即encodeURI(string) 问题处理前代码( ...
- python 爬虫抓取 MOOC 中国课程的讨论区内容
一:selenium 库 selenium 每次模拟浏览器打开页面,xpath 匹配需要抓取的内容.可以,但是特别慢,相当慢.作为一个对技术有追求的爬虫菜鸡,狂补了一些爬虫知识.甚至看了 scrapy ...