python - 基础 - 序列

1  增删查

arr1 = [1, 2, 3, "aaa"];
print(arr1);

#查询
print("arr1第1个元素为:" + str(arr1[0]));

#插入
arr1.insert(0, "bbb");
print("列表为:" + str(arr1));

#插入2, 直接插入在最后
arr1.append("ccc")
print("列表为:" + str(arr1));

#删除
del arr1[1];
print("删除第2个元素后列表为:" + str(arr1));

#删除2,类似于栈
obj1 = arr1.pop(0);
print("删除的元素为:" + obj1); #删除的是个字符串所以没事,如果是数字会报错,最好全加str()
print("删除后的列表为:" + str(arr1));

#删除3
obj1 = arr1.remove(3);
print("删除后的列表为:" + str(arr1));

 

2. 索引

java中数组的index,不过python的要更通用一些,除了上面提到的,还可以直接用于字符串等

print("1234"[2]); #输出3

index甚至可以是负数,从后往前计算

print("1234"[-2]); #输出3

可以理解为一个环,第一个是0,倒数第一个是-1,倒数第二个是-2

但是和环还是不同的,比如index = -5还是会越界的。

 

3. 分片

其实就是截取,索引是[index],分片是[begin, end]  取得 [begin, end) 前开后闭

print("123456789"[1:6]);#23456

"123456789"[1]  = 2

"123456789"[6]  = 7

分片也可以是负数,和index同理

print("123456789"[1:-1]);#输出2345678 这个可以从后向前截取,有时候很有用(比如去掉某些固定长度的后缀)。

从一个位置截取到最后:只需要空着第二个参数位置就可以了

print("123456789"[1:]);#输出23456789

也可以print("123456789"[1:9]); 或者更灵活点

print("123456789"[1:len("123456789")]);

len(e)是取e的元素个数(e如果是字符串就是取e的长度)

 

分片时还可以设置步长:比如隔一个取一个

print("123456789"[1:-2:2]);#输出246   [1:-2] 取出 234567 , 间隔2 取出 246

利用这个可以实现一些小功能,比如把一个数组变成奇数和偶数2个数组

intArr = [1,2,3,4,5,6,7,8,9,10];
intArr1 = intArr[0::2];
intArr2 = intArr[1::2];
print(intArr1);
print(intArr2);

 

4. 序列计算

和字符串一样,序列也可以用+拼接

intArr1 = [1,3,5,7,9];
intArr2 = [2,3,4,5,6];
print(intArr1 + intArr2); #[1, 3, 5, 7, 9, 2, 3, 4, 5, 6]

保持顺序,可以重复。

 

相乘

intArr1 = [1,2,3];
print(intArr1 * 3); #[1, 2, 3, 1, 2, 3, 1, 2, 3]

字符串也可以这样

 

序列并没有除法和减法

 

5. in

判断元素是否在序列内

intArr = [1,2,3];
print(1 in intArr); #True
print(4 in intArr); #False

 

6. 函数: len, max, min

print(len("243528")); #6
print(max("243528")); #8
print(min("243528")); #2

 

7. 函数list:把字符串变为序列, 可以用来修改字符串中某一个特定元素

str = 'hlllo world';
strList = list(str);
strList[1] = 'e';
str = "".join(strList);
print(str); #hello world

 

8.函数count,计算某个元素出现次数

arr = [1,2,3,4,4,3,3,2];
print(arr.count(3)); #3

str = 'hello world';
print(str.count("o")); #2

 

9.函数extend,扩展序列(序列后面拼接序列,序列a和b, a.extend(b)   相当于  a = a + b)

a = [1,2,3]
b = [3,4,5]

print(a + b); #[1,2,3,3,4,5]

print(a); #[1,2,3]

print(a.extend(b)); #没有返回值

print(a); #[1,2,3,3,4,5]

 

10.函数index,返回第一次出现的索引

a = [1,2,3,2,4]

print(a.index(2));

如果搜不存的元素时会报错,所以使用前需要加判断

 

11.函数reverse,反向存放

a = [1,2,3,2,4]

print(a.reverse());

 

12.函数sort,排序

a = [1,2,3,2,4]

print(a.sort());

 

posted @ 2020-06-01 17:29  不咬人的兔子  阅读(221)  评论(0编辑  收藏  举报