python基础学习总结day02
1. 列表
a.标志
列表的标志是:[,,,,,,]
b.基本操作(创建,append(),pop(),del(),拷贝
增加
- append通过append可以向列表添加元素
- extend 通过extend可以将另一个集合中的元素逐一添加到列表中(只能是集合tmp_list.extend(1)错误)
>>> a = [1, 2]
>>> b = [3, 4]
>>> a.append(b)
>>> a
[1, 2, [3, 4]]
>>> a.extend(b)
>>> a
[1, 2, [3, 4], 3, 4]
- insert(index, object) 在指定位置index前插入元素object
>>> a = [0, 1, 2]
>>> a.insert(1, 3)
>>> a
[0, 3, 1, 2]
删除
- del:根据下标进行删除del tmp_list[1] del(tmp_list)直接删除列表
- pop:删除最后一个元素
- remove:根据元素的值进行删除 tmp_list.remove(‘lisi’)
tmp_list = ['zhangsan','lisi','wangwu']
tmp_list.append('zhaoliu')
print(tmp_list)----['zhangsan', 'lisi', 'wangwu', 'zhaoliu']
tmp_list.pop()
print(tmp_list)---['zhangsan', 'lisi', 'wangwu']
copy:
Python中的对象之间赋值时是按引用传递的,如果需要拷贝对象,需要使用标准库中的copy模块。
- copy.copy 浅拷贝 只拷贝父对象,不会拷贝对象的内部的子对象。
- copy.deepcopy 深拷贝 拷贝对象及其子对象
>>> import copy
>>> a = [1,2,3,4,['a','b']] #原始对象
>>> b = a #赋值,传对象的引用
>>> c = copy.copy(a)
>>> d = copy.deepcopy(a)
>>> a.append(5)
>>> a[4].append('c')
>>> print ('a=',a)
a= [1, 2, 3, 4, ['a', 'b', 'c'], 5]
>>> print ('b=',b)
b= [1, 2, 3, 4, ['a', 'b', 'c'], 5]
>>> print ('c=',c)
c= [1, 2, 3, 4, ['a', 'b', 'c']]
>>> print ('d=',d)
d= [1, 2, 3, 4, ['a', 'b']]
c.列表相关方法
列表的遍历:
tmp_list = ['zhangsan','lisi','wangwu']
for tmp in tmp_list:
print (tmp)
index和count与字符串中的用法相同
>>> a = ['a', 'b', 'c', 'a', 'b']
>>> a.index('a', 1, 3) # 注意是左闭右开区间
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ValueError: 'a' is not in list
>>> a.index('a', 1, 4)
3
>>> a.count('b')
2
>>> a.count('d')
0
切片:tmp_list[2:5:2] (开始:结束:步长)
tmp_list[::-1]
2.元组
a.标志
元组标识:(,,,,,)
Python的元组与列表类似,不同之处在于元组的元素不能修改。元组使用小括号,列表使用方括号。
b.基本操作(创建及不可变性)
说明: python中不允许修改元组的数据,包括不能删除其中的元素。
3.string字符串
a.定义及基本操作(+,*,读取方式)
字符串定义:’ a’,“aa”。双引号或者单引号中的数据,就是字符串
a = 'zhangsan'
b = 'lisi'
c = a + b + 'a'
print(c)
zhangsanlisia
d = a*3
zhangsanzhangsanzhangsan
b.字符串相关方法
split ,join(重点常用’union all\n’.join([sql]))
把 mystr 中的 str1 替换成 str2,如果 count 指定,则替换不超过 count 次.
mystr.replace(str1, str2, mystr.count(str1))
4.字符串格式化问题
%和format
格式符号 | 转换 |
---|---|
%c | 字符 |
%s | 通过str() 字符串转换来格式化 |
%i | 有符号十进制整数 |
%d | 有符号十进制整数 |
%u | 无符号十进制整数 |
%o | 八进制整数 |
%x | 十六进制整数(小写字母) |
%X | 十六进制整数(大写字母) |
%e | 索引符号(小写’e’) |
%E | 索引符号(大写“E”) |
%f | 浮点实数 |
%g | %f和%e 的简写 |
%G | %f和%E的简写 |
format 用{}
toutiao_splicing = r’’’
select * from table2 where event_day=’{event_day}’
‘’’
self.event_day=‘20190228’
hql = toutiao_splicing.format(event_day=self.event_day)