'h' 2.切片...">
美文网首页
Python基础(2)_列表元组

Python基础(2)_列表元组

作者: Caesar_emperor | 来源:发表于2019-08-12 09:17 被阅读0次

一、通用序列操作

1.索引

Str = "hello world"
print(str[0])==>'h'

2.切片

Str = "hello world"
print(Str[0:11:2])==>hlowrd
print(Str[-1::-3])==>dooe 

*取值左闭右开,有步长则按起始值加步长取值,逆时针起始值是-1

3.列表运算

[1,2,3]+[4,5,3]==>[1,2,3,4,5,3]
[1,2]*2==>[1,2,1,2]

4.是否包含

Str = "hello world"

print('h' in Str)==>True

print("h" not in Str)==>False

二、list操作

注意:元组tuple只有index,count方法

1.字符串转list

list("Hello")==>['H','e','l','l','o']==>字符串转list

2.增
注意:
1.均不会返回新值
2.append整体加列表和值;extend只能添加列表且会将元素拆开添加进去

lis=[1,2,3]
lis.append(3)==>lis[1,2,3,3] 
*添加元素或列表后,添加一个新列表时,会将整个列表加进去,不会将其中元素拆开添加进去。 
lis.extend([6,7,4])==>lis[1,2,3,6,7,4] *extend在添加列表时会将列表元素拆开添加进去。 lis.insert(2,'88')==>lis[1,2,88,3] *第一个参数是位置,第二个是插入的值,插入到该位置之前。

3.删
 注意:
均不会返回新值,除remove外删除均以位置来决定删除谁

name = ["hello","world","李雨哲"]

del name[2]==>name=["hello","world"] *del语句可以删除更多的东西。

name.pop(0)==>name=["world","李雨哲"] *删除指定位置的参数,默认删除最后一个,可以获取删除的数。

name.remove("world")==>name=["hello","李雨哲"] *remove删除的是值

name.clear()==>name=[] 

4.改

name=[1,2,3]
name[0]=3==>name=[3,2,3]

5.查

name = ["hello","world","李雨哲"]
name.index("world") *查找该值的位置,返回索引值,没找到就报错
name.count("hello") *返回查找的数值

reverse和reversed排序
name = ["hello","world","李雨哲"]
name.reverse()==>['李雨哲', 'world', 'hello']
A=reversed(name)
print(list(A))==>['李雨哲', 'world', 'hello'] 

sort和sorted排序
name = ["1","3","0"]
name.sort(reverse=True)==>["3","1","0"]
*默认升序, reverse=True则降序;参数可以是key,key=len则按长度排序

name = "python"
a=["2","5","0"]
A=sorted(name)
aa=sorted(a)
print(A)
print(aa) 
*sorted会返回一个新值,sorted函数排序后任何序列均会返回一个列表

6.复制

a = [1,2,3]
b = a
b[1] = 4==>a=[1,4,3] *赋值后改变值会影响原列表,即浅拷贝 

import copy

a=[1,3,5,[4,6]]
b = copy.copy(a)

a[3][0]=3
print(b)==>[1, 3, 5, [3, 6]]
print(a)==>[1, 3, 5, [3, 6]]

a[0]=2
print(b)==>[1, 3, 5, [4, 6]]
print(a)==>a=[2,3,5,[4,6]] 

*浅拷贝,更改第一层不会影响复制文件,但因为复制未达到第二层,所以当更改深层数值,会产生影响。 

import copy

a=[1,3,5,[4,6]]
b = copy.copy(a)

a[3][0]=3
print(a)==>[1, 3, 5, [3, 6]]
print(b)==>[1, 3, 5, [4, 6]] 

*深拷贝,数据完全不共享,完全放入独立的一个内存,怎么更改原值均不会影响复制文件

相关文章

网友评论

      本文标题:Python基础(2)_列表元组

      本文链接:https://www.haomeiwen.com/subject/axijjctx.html