列表

一、关键字:  list  lst = [ , , , , , , ,]

 lst = [1,2,3,4]

二、方法:

1.增加:

. append( ) #追加​​​,添加元素进列表最后

lst.append('alex')     #追加,默认加到列表最后

. insert ( )​   #插入 括号里前面放插入的位置(索引),后面是插入的内容

lst.insert(0,'alex')      #添加指定位置,前面是位置,后面是内容

.extend( )​​   #扩展 只能进行迭代添加, 只能在添加到后面,后面添加可迭代对象

lst = [1,2,3,4]
lst.extend('alex')
print(lst)​ 输出:[1, 2, 3, 4, 'a', 'l', 'e', 'x']

+:   号是合并列表的方法​​

* :lst_1 * 数字 将列表内的元素翻倍输出 ​

2.删除:

.remove()            #移除 通过放在括号里的指定元素进行删除​​.,后面只能加入一个删除参数.只能删除一个.

lst.remove(4)                #删除指定元素,后面加入要删除的元素

.pop( )                 #弹出​​ 默认删除最后一个. 后面可以加元素的索引​指定删除的元素

lst.pop()                      #默认删除最后一个
i=lst.pop(2) #删除指定索引的元素,并且可以返回删除的值

.clear( )               ​ #清空 将列表内的元素都删除

lst.clear()                       #清空列表

注意(此处神坑):用for循环将列表清空

(错误方式)

lst = [1,2,3,4,5]

for i in lst: #这种问题是for循环的循环机制导致的,这个是当for要循环的数据为空时,他就停止循环

lst.remove(i) #这样子删除不行,循环删除是位置上的值,当这个位置删除过了,下次再循环就不会再删除这个位置了
print(lst)      

正确方式:

1、利用pop()方法

lst = [1,2,3,4,5]
for i in range(len(lst)): #通过for实现循环次数,但是并不参与删除操作
lst.pop(0) #默认删除最后一个,可以规避掉for的循环机制
print(lst)

2、利用新列表规避:

lst = [1,2,3,4,5]
lst1 = [] #通过另建一个新表
for i in lst:
  lst1.append(i) #使用另一个列表来规避掉for的循环机制
for k in lst1:
  lst.remove(k)
  print(lst)

del lst [ ]     #通过索引删除对应的元素​

del lst[1]                            #删除指定位置的元素

del ​​lst                   #删除整个列表,即将列表删了

3.修改​:

lst []​ = ' '     #具体替换, 利用索引

lst[1] = 'alex'                      #修改指定位置的元素

lst[0:5] = ''    #当一次性​改多个元素时,当后面是一个元素时,将该元素分开替换,后面是多个元素时,将多个元素分别替换前面的索引

lst[0:2] = 'alex','wusir'  

4.查:

a.lst[ ]       #利用索引进行查询​​

i = lst[0]                              #查询具体位置的元素

b.通过for循环查询​​

​5.列表的其他操作:

操作列表的时候要进行赋值,增删改查的时候不用赋值。​​

其他的和字符串相通:

​.reverse( )    #对列表进行翻转​ ,没有赋值

​.sort()       #按大小对列表进行排序​默认升序,对于字母按照单词的首字母按26个字母进行排序. 即按照ASCII进行排序 没有返回值

降序:

​lst.sort(reverse = True) ​

print(lst)​   

排序:

lis = ['','','','','','','','','a','c','d']
lis.sort()
lis.reverse()
print(lis)

列表嵌套:​

lst = [1,'太白','wusir',['麻花疼',['可口可乐'],'王健林']]
lst[-1][1].append('雪碧')
print(lst[-1][1])
print(lst)​​

列表是可变的有序的数据类型

元组

一、关键字: tuple

tu(1)​

print(type(tu))   #元组中的数据类型取决于其中的数据类型种类的多少,如果括号里只有一个类型,那表现为这个类型,如果有两个以上类型,那表现为'tuple'类型

      只要是中括号括起来的,其数据类型都是'list'

元组只能进行索引和计数,还可以切片,切片切出来的还是元组.也能循环,就是不能更改元祖的内容

注意:元组也可以合并,合并是两个的数据类型都应该是tuple​

tu1 = tu() + (5)     #是错误的,因为括号里只有整型一个数据类型,所以表现为整型,不能和元组合并.

​​tu1 = tu() + (5,)     #这样子就可以了

​tu = (1,2,3,4)​​

tu.index( )​ #查找​

tu.count( )​ #计数

元祖也可以嵌套​

​元组中的字符串和数字是不可变的数据类型,而其中嵌套的列表是可以更改的​,就是说其所代表的内存没有改变

之所以使用元组主要是因为元组不可改变,安全系数比列表更高!​

元组是不可变得有序的数据类型的数据类型.

七大数据类型之间的转换

str()       #可以转换任何数据类型

int()       #可以转换str中单个数字

bool()       #其中有0,False,{},[],'',()表示False,别的都是True

list()       #除了数字和bool值之外都可以转换 ,转换字典是只能转换其中的键,即可迭代的数据类型

tuple()      #除了数字和bool值之外都可以转换 ,转换字典是只能转换其中的键,即可迭代的数据类型

dict()       #什么类型都不能转换

set()       #除了数字和bool值之外都可以转换 ,转换字典是只能转换其中的键,即可迭代的数据类型

#数据类型转换
str() #可以转换任何数据类型
int() #可以转换str中单个数字
bool() #其中有0,False,{},[],'',()表示False,别的都是True
list() #除了数字和bool值之外都可以转换 ,转换字典是只能转换其中的键,即可迭代的数据类型
tuple() #除了数字和bool值之外都可以转换 ,转换字典是只能转换其中的键,即可迭代的数据类型
dict() #什么类型都不能转换
print(set({'alex':1,'':3})) #除了数字和bool值之外都可以转换 ,转换字典是只能转换其中的键,即可迭代的数据类型

python七类之列表元组的更多相关文章

  1. python七类之字典详解

    一.字典 一.关键字:dict 1.字典是唯一的键值对数据,其表现形式:   dic  =  {键:值},​字典里的键必须保证是唯一的 2.键必须是不可变的数据类型: ​a.故列表是不能当键的 b.所 ...

  2. python 基础篇 04(列表 元组 常规操作)

    本节主要内容:1. 列表2. 列表的增删改查3. 列表的嵌套4. 元组和元组嵌套5. range 一. 列表1.1 列表的介绍列表是python的基础数据类型之一 ,其他编程语言也有类似的数据类型. ...

  3. python基础数据类型之列表,元组操作

    一.列表的索引和切片1.列表的索引列表和字符串一样样拥有索引 lst = ["a","b","c"] print(lst[0]) # 获取第 ...

  4. Python处理字符串和列表元组的小技巧

    变量值互换 a = 1 b = 100 # 变量值互换 a, b = b, a print('a:', a) print('b:', b) 输出结果: a: 100 b: 1 多个变量赋值 a, b, ...

  5. python之路---04 列表 元组

    十七 .列表 在python中使用[]来描述列表, 内部元素用逗号隔开. 对数据类型没有要求 1.列表存在索引和切片. 和字符串是一样的. 2.增删改查操作 1).增加 1. .append(&quo ...

  6. Python自动化开发 - 字符串, 列表, 元组, 字典和和文件操作

    一.字符串 特性:字符串本身不可修改,除非字符串变量重新赋值.Python3中所有字符串都是Unicode字符串,支持中文. >>> name  = "Jonathan&q ...

  7. python基础之02列表/元组/字典/set集合

    python中内置的数据类型有列表(list)元组(tuple)字典(directory). 1 list list是一种可变的有序的集合.来看一个list实例: #第一种方法: >>&g ...

  8. python笔记(1)--序列(列表 元组 range)

    一.序列分类 1.可变序列:list 2.不可变序列:tuple,range 二.序列公共操作方法 1.操作和返回值 其中s和t代表同类型序列:n,i,j,k为整数:x为任意类型. 序号 操作 结果 ...

  9. 记录我的 python 学习历程-Day03 列表/元组/rang

    一.列表初识 列表是 Python 的基础数据类型之一,它是以''[ ]''的形式括起来的,每个元素用","隔开,属于容器型数据类型,他可以存放大量的.各种类型的数据. 基本格式 ...

随机推荐

  1. Oracle VM virtualBox -Centos6.4 安装后没有网解决方法

    1.先修改Oracle VM virtualBox 的网络配置 2.然后启动centos输入:  dhclient eth0 3.然后如果没报错的话  输入: ifconfig  就可以查看到ip地址 ...

  2. ant用法

    下载ant包,解压版,解压到某目录后配置环境变量即可,这里不在赘述.配置成功cmd ant-version,显示ant版本即OK.           ant是Apache的跨平台的构建工具,他可以实 ...

  3. 15分钟完成基于Azure公有云搭建远程测试环境

  4. C#设计模式之代理模式(一)

    原文地址:http://blog.csdn.net/lovelion/article/details/8227953 代理模式是常用的结构型设计模式之一,当无法直接访问某个对象或访问某个对象存在困难时 ...

  5. springMVC通过ajax传参到后台

    JSON对象和JSON字符串 在SpringMVC环境中,@RequestBody接收的是一个Json对象的字符串,而不是一个Json对象.然而在ajax请求往往传的都是Json对象,用 JSON.s ...

  6. vs2010开发链接服务器出现错误(SourceSafe)

    用vs2010开发项目链接服务器时出现 之前是因为权限问题,每次打开项目文件时 ,都要先直接进服务器然后打开项目. 用了两天,又不行了.就这个问题已经问了了老大不下3次了. 其实很是不想再麻烦他老人家 ...

  7. zip4j之加压解压

    最近看同事搞个文件打包,搞了大半天,还是有问题!嗨~~ 网上明明有现成的,偏偏要自己写! 下面是基于zip4j实现加压解决的简单工具类 package com.learcher.zip; import ...

  8. 关于Java中截取字符串

    获取系统时间:to_char(sysdate,'yyyy-mm-dd')截取CREATETIME常量的前10位字符串:CREATETIME.substring(0,10)截取DESCRIPT常量的前2 ...

  9. echart 折线图、柱状图、饼图、环形图颜色修改

    之前在做报表的时候用过echart 用完也就完了,而这次在用的时候已经忘了,所以这里简单记录一下,好记性不如烂笔头!!! 1.折线图修改颜色: xAxis: { type: 'category', b ...

  10. bzoj3816 矩阵变换

    Description 给出一个 N 行 M 列的矩阵A, 保证满足以下性质: M>N. 矩阵中每个数都是 [0,N] 中的自然数. 每行中, [1,N] 中每个自然数都恰好出现一次.这意味着每 ...