1、列表
列表相当与C++中的数组,是有序的项目, 通过索引进行查找,但使用起来却方便很多,具体的操作看代码,自己实践一次就非常简单了。
注:列表一般用中括号“[ ]”
#列表(数组) name_list = [‘huahua‘,‘weiwei‘,‘jack‘,‘dabao‘] name_list.append(‘wenyen‘) # 在后面加一个元素 # 例如 name_list.insert(1,"jack") name_list.count(‘jack‘) name_list.index(‘jack‘) name_list.remove(‘jack‘) # 只能填真实的值,否则用del name_list[1] name_list.pop() # 删除最后一个 name_list.reverse() # 倒序 name_list.sort() # 按asc2码来排序 # 例如 num_list = [‘a‘,‘b‘,‘c‘,‘d‘] name_list, num_list name_list.extend(num_list) # 扩展列表 相当于name_list += num_list name_list[2:5] # 切片,顾头不顾尾 name_list[-5:] # 从后往前取,:后面什么都不加表示取到最后一个数 name_list[name_list.index(‘a‘):name_list.index(‘a‘)+3] name_list[1::3] # 从第一个开始取,隔两个取一个
2、元组
元组是将多样的对象集合到一起,不能修改,通过索引进行查找;元组的主要特性就是不可修改,相当于常量,是作为一个整体使用的。
注:元组一般用括号“( )”
元组和列表可以实现互相转换,如下
#元组(相当于常量不可修改)用()的叫元组用[]的叫列表 a = (1,2,3,4)#元组和列表的互相转换 type(a) a = list(a) type(a) a = tuple(a) type(a)
3、字典
字典是一组键(key)和值(value)的组合,通过键(key)进行查找,没有顺序
注:使用大括号”{}”
# 字典(所有的key必须是唯一的)用{} person_info = {"name": "vivi", ‘age‘: ‘18‘, ‘job‘: ‘engineer‘} person_info[‘salary‘] = 300000 # 新增 person_info[‘job‘] = ‘it‘ # 更改 person_info.pop(‘salary‘) # pop可指定删除 person_info.popitem() # popitem不指定就随机删除一个(因为字典没有数据) person_info.get(‘name‘) # 有这个key就返回值,没有就返回none,不像【】一样会报错 person_info.has_key(‘job‘) # 判断是否有这个key,没有则可以写入 person_info.keys() # 只显示key person_info.setdefault(‘gentle‘, ‘male‘) # 设置默认值,有则不变,没有加入 new_info = {‘age‘: 19, ‘addr‘: [‘wuhan‘, ‘beijing‘]} person_info.update(new_info) # 把新字典更新到老的字典中 print person_info[‘name‘] # 在文件中要用print才有输出 print person_info.items() # items默认会把索引和值都打出来(以列表的形式) print person_info
注:以下是关于字典的两种循环
for i in person_info: # 效率高 print i, person_info[i] for k, v in person_info.iteritems(): # 先以列表的额形式打印出来再进行循环,效率低 print k, v
4、集合
集合是无序的,自动去重,不支持索引但可以进行关系测试
注:集合用“{}”表示
# 集合 (无序 自动去重,关系测试,不支持索引) 用{} a = range(50) a = set(a) a.add(-1) a.pop() print a x = {1, 2, 3, 4} y = {3, 4, 5, 6} print x & y print x | y print x - y print x ^ y
5、字符串
字符串其实不属于基本结构啦,只是懒得单独拎出来写了~
#字符串 msg = "what‘s your company‘s name?" msg = msg.capitalize() msg = msg.upper() msg = msg.lower() msg += ‘ WEIWEI‘ # 这个操作要重新开辟两次内存空间,用join就只需要开辟一次 msg = msg.swapcase() msg_list = msg.split() # 默认是以空格作为分隔,组成一个列表(可以自己设定)string转化为list ‘hhhhhhhhh‘.join(msg_list) # 列表转换为字符串的完形填空~list转换为string msg msg.startswith(‘WHAT‘) len(msg) cmp(‘a‘, ‘b‘) # 小于为-1 cmp(‘b‘, ‘a‘) # 大于为1 cmp(‘a‘, ‘a‘) # 等于为0 ord(‘h‘) # 问asc2码
以上是我自己看书查资料总结的一些比较常用的命令,比较乱啦,但因为这是之前写的笔记就懒得改了,其实copy到电脑里面运行一下所有命令的意思就很明朗了~一点自己的经验~