Python基础任务二

\1. 列表

a. 标志

b. 基本操作(创建,append( ),pop( ) ,del( ), 拷贝)

c. 列表相关方法

\2. 元组

a. 标志

b. 基本操作(创建及不可变性)

\3. string字符串

a. 定义及基本操作(+,*,读取方式)

b. 字符串相关方法

\4. 字符串格式化问题

列表

列表可以完成大多数集合类的数据结构实现。列表中元素的类型可以不相同,它支持数字,字符串甚至可以包含列表(所谓嵌套)。
和字符串一样,list可以被索引和切片,List可以使用+操作符进行拼接。
列表是写在方括号 [] 之间、用逗号分隔开的元素列表。
索引值以 0 为开始值,-1 为从末尾的开始位置。

b. 基本操作

· 创建一个列表,只要把逗号分隔的不同的数据项使用方括号括起来即可。list1 = [‘Hello’, ‘World’, 1997, 2000];
list2 = [1, 2, 3, 4, 5 ];
list3 = [“a”, “b”, “c”, “d”];

和字符串一样,列表同样可以被索引和截取,列表被截取后返回一个包含所需元素的新列表。

访问列表中的值:

list1 = [‘Hello’, ‘World’, 1997, 2000];
list2 = [1, 2, 3, 4, 5, 6, 7 ];

print ("list1[0]: ", list1[0]) # list1[0]: Hello
print ("list2[1:5]: ", list2[1:5]) # list2[1:5]: [2, 3, 4, 5]

· append( )

list1 = [‘aaa’, ‘bbb’, ‘ccc’]
list1.append(‘ddd’)
print ("更新后的列表 : ", list1)

[‘aaa’, ‘bbb’, ‘ccc’, ‘ddd’]

· pop( )

list.pop([index=-1]) index – 可选参数,要移除列表元素的索引值,不能超过列表总长度,默认为 index=-1,删除最后一个列表值。

list1 = [‘aaa’, ‘bbb’, ‘ccc’]

list1.pop()
print ("列表现在为 : ", list1)

[‘aaa’, ‘bbb’]

list1.pop(1)
print ("列表现在为 : ", list1)

[‘bbb’]

· del( )
可以使用 del 语句来删除列表的的元素。

list = [‘aaa’, ‘bbb’, 2019, 2020]

del list[2]
print ("删除第三个元素 : ", list)

[‘aaa’, ‘bbb’, 2020]

用来删除列表元素的方法还有一个。
remove() 函数用于移除列表中某个值的第一个匹配项。

aList = [‘aaa’, ‘bbb’, ‘ccc’, ‘bbb’];
aList.remove(‘bbb’);

print "List : ", aList;

[‘aaa’, ‘ccc’, ‘bbb’]

· 拷贝

copy() 函数用于复制列表,类似于 a[:]。
无参数,返回复制后的新列表。

往列表中设置不同类型的值(由于元组不可修改,便没有放进去),观察两种拷贝方法的差异。

a = [2333, ‘a’, [0, 1, 2], {‘a’, ‘b’, ‘c’}, {‘name’: ‘python’, ‘age’: 3}]
b = a
c = a.copy()

数值

del a[0]
‘’’
各变量值为:
a = [‘a’, [0, 1, 2], {‘c’, ‘b’, ‘a’}, {‘name’: ‘python’, ‘age’: 3}]
b = [‘a’, [0, 1, 2], {‘c’, ‘b’, ‘a’}, {‘name’: ‘python’, ‘age’:
c = [2333, ‘a’, [0, 1, 2], {‘c’, ‘b’, ‘a’}, {‘name’: ‘python’, ‘age’: 3}]
‘’’

字符串

del a[0]
‘’’
各变量值为:
a = [[0, 1, 2], {‘b’, ‘a’, ‘c’}, {‘name’: ‘python’, ‘age’: 3}]
b = [[0, 1, 2], {‘b’, ‘a’, ‘c’}, {‘name’: ‘python’, ‘age’: 3}]
c = [2333, ‘a’, [0, 1, 2], {‘b’, ‘a’, ‘c’}, {‘name’: ‘python’, ‘age’: 3}]
‘’’

列表

del a[0][0]
‘’’
各变量值为:
a = [[1, 2], {‘c’, ‘a’, ‘b’}, {‘name’: ‘python’, ‘age’: 3}]
b = [[1, 2], {‘c’, ‘a’, ‘b’}, {‘name’: ‘python’, ‘age’: 3}]
c = [2333, ‘a’, [1, 2], {‘c’, ‘a’, ‘b’}, {‘name’: ‘python’, ‘age’: 3}]
‘’’

集合

a[1].remove(‘a’)
‘’’
各变量值为:
a =], {‘c’, ‘b’}, {‘name’: ‘python’, ‘age’: 3}]
b = [[1, 2], {‘c’, ‘b’}, {‘name’: ‘python’, ‘age’: 3}]
c = [2333, ‘a’, [1, 2], {‘c’, ‘b’}, {‘name’: ‘python’, ‘age’: 3}]
‘’’

字典a[2][‘age’] = 4
‘’’
各变量值为:
a = [[1, 2], {‘c’, ‘b’}, {‘name’: ‘python’, ‘age’: 4}]
b
c. 列表相关方法

原文:http://www.runoob.com/python3/python3-list.html

  1. Tuple

a. 标志

Python 的元组与列表类似,不同之处在于元组的元素不能修改。
元组使用小括号,列表使用方括号。

b. 基本操作(创建及不可变性)

创建:
元组创建很简单,只需要在()中添加元素,并使用逗号隔开即可。

tup1 = (‘aaa’, ‘bbb’, 2019, 2020);
tup2 = (1, 2, 3, 4, 5 );
tup3 = “a”, “b”, “c”, “d”; # 不需要括号也可以
type(tup3)

<class ‘tuple’>

创建空元组

tup1 = ();

元组中只包含一个元素时,需要在元素后面添加逗号,否则括号会被当作运算符使用

tup1 = (50)
type(tup1) # 不加逗号,类型为整型

<class ‘int’>

tup1 = (50,)
type(tup1) # 加上逗号,类型为元组

<class ‘tuple’>

不可变性:

tup = (1, 2, 3, 4, 5, 6)
print(tup[0])

1

print(tup[1:5])
(2, 3, 4, 5)
tup[0] = 11 # 修改元组元素的操作是非法的Traceback (most recent call last):
File “”, line 1, in
TypeError: ‘tuple’ object does not support item assignment
1
虽然tuple的元素不可改变,但它可以包含可变的对象,比如list列表,可以使用下标索引来访问元组中的值,可以用“+”连接,存储到另一个变量中,也可以整个元组全部删除。

string、list 和 tuple 都属于 sequence(序列)。
注意:
1、与字符串一样,元组的元素不能修改。
2、元组也可以被索引和切片,方法一样。
3、注意构造包含 0 或 1 个元素的元组的特殊语法规则。
4、元组也可以使用+操作符进行拼接。
5. Set

集合(set)是由一个或数个形态各异的大小整体组成的,构成集合的事物或对象称作元素或是成员。
基本功能是进行成员关系测试和删除重复元素。
可以使用大括号 { } 或者 set() 函数创建集合,注意:创建一个空集合必须用 set() 而不是 { },因为 { } 是用来创建一个空字典。

student = {‘Tom’, ‘Jim’, ‘Mary’, ‘Tom’, ‘Jack’, ‘Rose’}
print(student) # {‘Mary’, ‘Jim’, ‘Rose’, ‘Jack’, ‘Tom’} 输出集合,重复的元素被自动去掉

成员测试

if ‘Rose’ in student :
print(‘Rose 在集合中’)
else :
print(‘Rose 不在集合中’)

Rose 在集合中

set可以进行集合运算a = set(‘abracadabra’)

b = set(‘alacazam’)
print(a) # {‘b’, ‘a’, ‘c’, ‘r’, ‘d’}
print(a - b) # {‘b’, ‘d’, ‘r’} a 和 b 的差集
print(a | b) # {‘l’, ‘r’, ‘a’, ‘c’, ‘z’, ‘m’, ‘b’, ‘d’} a 和 b 的并集
print(a & b) # {‘a’, ‘c’} a 和 b 的交集
print(a ^ b) # {‘l’, ‘r’, ‘z’, ‘m’, ‘b’, ‘d’} a 和 b 中不同时存在的元素

  1. Dictionary

列表是有序的对象集合,字典是无序的对象集合。两者之间的区别在于:字典当中的元素是通过键来存取的,而不是通过偏移存取。
字典是一种映射类型,字典用 { } 标识,它是一个无序的 键(key) : 值(value) 的集合。
键(key)必须使用不可变类型。
在同一个字典中,键(key)必须是唯一的。

dict = {}
dict[‘one’] = “1 - 菜鸟教程”
dict[2] = “2 - 菜鸟工具”

tinydict = {‘name’: ‘runoob’,‘code’:1, ‘site’: ‘www.runoob.com’}print (dict[‘one’]) # 1 - 菜鸟教程 输出键为 ‘one’ 的值
print (dict[2]) # 2 - 菜鸟工具 输出键为 2 的值
print (tinydict) # {‘name’: ‘runoob’, ‘code’: 1, ‘site’: ‘www.runoob.com’} 输出完整的字典
print (tinydict.keys()) # dict_keys([‘name’, ‘code’, ‘site’]) 输出所有键
print (tinydict.values()) # dict_values([‘runoob’, 1, ‘www.runoob.com’]) 输出所有值

另外,字典类型也有一些内置的函数,例如clear()、keys()、values()等。
注意:
1、字典是一种映射类型,它的元素是键值对。
2、字典的关键字必须为不可变类型,且不能重复。
3、创建空字典使用 {}。
二、字符串格式化问题

Python 支持格式化字符串的输出 。尽管这样可能会用到非常复杂的表达式,但最基本的用法是将一个值插入到一个有字符串格式符 %s 的字符串中。

print (“我叫 %s 今年 %d 岁!” % (‘小明’, 10))

python字符串格式化符号:

格式化操作符辅助指令:

猜你喜欢

转载自blog.csdn.net/weixin_41741008/article/details/89007090