for循环,列表,元组
依旧是python基础
for循环
s = 'woeudbwieb'
for i in s:#s代表可迭代对象
print(i)
if 'c' not in s:
print('没有c')
列表
每个元素以逗号隔开,可以放任意的数据类型,有序
切片和索引跟字符串相同
常用操作
# 增加
li = ['jiang','chengcheng']
li.append('judy')
print(li) # 迭代增加
li = ['jiang','cheng']
li.extend('')#参数为可迭代对象,分解成元素逐个添加到列表后面
# 小练习,循环增加列表
li = ['jiang','chengcheng']
while 1:
new = input('input new :')
if new=='q':
break
else:li.append(new)
print(li)
# 插入
li = ['jiang','chengcheng']
li.insert(1,'')#插入到索引值的前面
print(li)
# 删除
li = ['jiang','chengcheng',1,2,3,4]
li.pop() #按索引删除,默认删除最后一个,返回删除元素
li.remove('dudu') #按元素删除,没有返回值
li.clear() #清空列表
del li #在内存中删除整个列表
del li[2:]#切片删除
# 修改
li = ['jiang','chengcheng',1,2,3,4]
li[2] = 'hlb' # 切片修改
li[2:4] = 'i am beatiful girl'#任意多个字符
print(li)
# 排序(列表中元素是同一类型)
list = [1,2,3,4,7,6,5,8,0,9]
list.sort(reverse=True)#默认false->正向排序
list.reverse()#反转
# 列表嵌套
list = [['jiang','cheng','cheng'],'is','a','beautiful','girl']
#循环打印嵌套列表
l = [1,2,3,5,'jcc',[1,5,3],'beauty']
for i in l:
if isinstance(i,list):
for j in i:
print(j)
else:print(i)
list在循环中删除的状况
#测试循环中删除元素
list1 = [1,2,3,4,5]
for i in range(len(list1)):#进入循环时range(len(list1))的数值已经固定,[0,1,2,3,4]
print(i)
del list1[i]#i = 3时报错,IndexError: list assignment index out of range
print(list1) for i in range(len(list1)):
if i%2!=0:
list1.remove(list1[i])
print(list1)#虽然没有报错,但是结果是错误的
#删除奇数位的元素
#1.list的切片
print(list1[::2])
# 2.
list2 = []
for i in range(len(list1)):
if i%2==0:
list2.append(list1[i])
list1 = list2
print(list2)
print(list1)
元组
可循环,可切片,不可修改
可变数据类型:列表list,字典dict,集合set 不可hash
不可变数据类型:元组tuple,bool,int,str 可hash
常用操作
tuple = (1,2,3,'jiang','cheng','cheng',['is','a','beautiful','girl'])
tuple[0] = ''#报错,不可修改
tuple[6][2] = 'handsome'#可以修改
join
s = 'jcc'
lis = ['','','']#list里边只能放字符串,不能放数字,且不能嵌套
s1 = '*'.join(lis)#可以放可迭代对象,以*连接元素,形成一个新的字符串
range
for i in range(0,10,2):#打印
print(i)
for i in range(10,1,-1):#倒叙打印2-10
print(i)
for i in range(1,10,-1):#不会报错,什么都不打印
print(i)
字典
key必须是不可变数据类型
优势:key值组成hash表,二分方法查找,查询速度快
存储大量的关系型数据
无序
常用操作
#字典 dict
dic = {'age':19,'name':'jcc'}
dic1 = {'age':22}
#增加
dic['high'] = 160
dic.setdefault('weight',49)
#修改
dic['name'] = 'jiangcc'
dic.update(dic1)#把dic1中的键值对更新到dic中,有就改,没有就不改
dic.setdefault('weight',50)#不做改变,体重增加一公斤都不行
#删除
dic.pop('age')#删除有返回值,返回删除的元素
dic.popitem()#随机删除
dic.clear()#清空字典
del dic['name']#删除键值对,没找不到会报错
#查
dic.keys()#得到一个和列表相似的数据类型,把字典中的键放入
dic.values()#得到一个和列表相似的数据类型,把字典中的值放入
dic.items()#得到一个列表里边 嵌套多个元组
# 循环键值对
for k,v in dic.items():
print(k,v)
print(dic.get('name1'))#如果没有查到不报错,返回None
v = dic['name1']#查不到报错
# 字典嵌套
dic = {
'name':['jcc','hlb'],
'hobby':{
'boy':'cool'
},
'age':18
}
dic['age'] = 16
dic['name'].append('jiangchengcheng')
dic['name'][0] = 'JCC'
print(dic)
一些小知识
# 用一行代码交换ab的值
a,b = 1,2
print(a,b)
a,b = b,a
print(a,b)
#当数字在-5-256之间 创建多个数字的地址相同,因为有小数据池
i1 = 6
i2 = 6
#内存地址相同
i3 = 300
i4= 300
#内存地址不相同
=,== is
= ->赋值
== ->比较值是否相等
is ->比较内存地址是否相等
id()-->查看内存地址
17:42
for循环,列表,元组的更多相关文章
- 2.9高级变量类型操作(列表 * 元组 * 字典 * 字符串)_内置函数_切片_运算符_for循环
高级变量类型 目标 列表 元组 字典 字符串 公共方法 变量高级 知识点回顾 Python 中数据类型可以分为 数字型 和 非数字型 数字型 整型 (int) 浮点型(float) 布尔型(bool) ...
- Python学习笔记(1):列表元组结构
Python的列表元组功能强大,令人印象深刻.一是非常灵活,二是便于集体操作.特别是以元组作为列表项的结构,和数据访问的结果能够对应起来,和习惯的二维表理解上也一致,有很多的用途. 以学习笔记(3)中 ...
- python列表元组
python列表元组 索引 切片 追加 删除 长度 循环 包含 定义一个列表 my_list = [] my_list = list() my_list = ['Michael', ' ...
- Python第三天 序列 数据类型 数值 字符串 列表 元组 字典
Python第三天 序列 数据类型 数值 字符串 列表 元组 字典 数据类型数值字符串列表元组字典 序列序列:字符串.列表.元组序列的两个主要特点是索引操作符和切片操作符- 索引操作符让我 ...
- python基础(五)列表,元组,集合
列表 在python中是由数个有序的元素组成的数据结构,每一个元素对应一个index索引来隐式标注元素在列表中的位置.是python中最常用的一种数据类型.需要注意的是列表中可以有重复相同的数据. 列 ...
- Python第三天 序列 5种数据类型 数值 字符串 列表 元组 字典 各种数据类型的的xx重写xx表达式
Python第三天 序列 5种数据类型 数值 字符串 列表 元组 字典 各种数据类型的的xx重写xx表达式 目录 Pycharm使用技巧(转载) Python第一天 安装 shell ...
- Python摸爬滚打之day04----基本数据类型(列表,元组)
1.列表 列表是可变的, 有序的数据类型,列表是按照添加顺序来保存的,可以存放各种数据类型. 1.1 列表的切片(同字符串) 1.2 列表的增删改查 注意: 列表是可以直接在列表上面进行操 ...
- python基础知识-04-字符串列表元组
python其他知识目录 内存,cpu,硬盘,解释器 实时翻译 编译器 :一次性翻译python2,3 除法,2不能得小数,3能得小数 1.字符串操作 1.1字符串操作startswith start ...
- 巨蟒python全栈开发-第4天 列表&元组&range
今日内容大纲 1. 什么是列表 定义: 能装对象的对象 在python中使用[]来描述列表, 内部元素用逗号隔开. 对数据类型没有要求 列表存在索引和切片. 和字符串是一样的. 2. 相关的增删改查操 ...
- python 基础篇 04(列表 元组 常规操作)
本节主要内容:1. 列表2. 列表的增删改查3. 列表的嵌套4. 元组和元组嵌套5. range 一. 列表1.1 列表的介绍列表是python的基础数据类型之一 ,其他编程语言也有类似的数据类型. ...
随机推荐
- 管理工具:SWOT、PDCA、6W2H、SMART、WBS、时间管理
01:SWOT分析法 Strengths:优势 Weaknesses:劣势 Opportunities:机会 Threats:威胁 意义:帮您清晰地把握全局,分析自己在资源方面的优势与劣势,把握环境提 ...
- python成功之道
https://blog.ansheng.me/article/python-full-stack-way
- Js将数字转化为中文大写
function number_chinese(str) { var num = parseFloat(str); var strOutput = "", strUnit = '仟 ...
- TypeScript type 类型别名
//6,类型别名 /**类型别名不能出现在声明右侧的任何地方. * 接口 vs. 类型别名 * 另一个重要区别是类型别名不能被extends和implements(自己也不能extends和imple ...
- Letsencrypt SSL免费证书申请(Docker)
最近需要SSL证书,又不想花钱买,正好看到linux基金会去年底上线了新的开源项目,免费推广SSL遂尝试. Let's Encrypt 介绍 Let’s Encrypt is a free, auto ...
- Linux下载命令之rpm和yum比较
RPM和YUM比较 rpm 是linux的一种软件包名称,以.rmp结尾,安装的时候语法为:rpm -ivh,rpm包的安装有一个很大的缺点就是文件的关联性太大,有时候装一个软件要安装很多其他的软件包 ...
- 【学习】pandas 基础介绍说明 【pandas】
本文来源于<利用python进行数据分析>中文版,大家有兴趣可以看原版,入门的东西得脚踏实地哈 1.pandas 数据结构介绍 首先熟悉它的两个主要数据结构,Series 和 DataFr ...
- !!学习笔记:CSS3动画
一句话就有css3动画: 2016-6-29 <style type="text/css"> h1{background:#999;} h1:hover{border- ...
- java细节知识
代码优化细节 (1)尽量指定类.方法的final修饰符 带有final修饰符的类是不可派生的.在Java核心API中,有许多应用final的例子,例如java.lang.String,整个类都是fin ...
- maven构建SSM框架中pom.xml文件配置
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/20 ...