字符串
创建:
s = 'Hello,Eva! How are you?'
#索引
s = 'Hello'
>>>[1]
'e'
>>>s[-1]
'o'
>>>s.index('e')
1
#查找
>>>s.find('e')
1
>>>s.find('i')
-1
移除空白
s=' hello,world! '
s.strip()
s.lstrip()
s.rstrip()
s2= '***hello,world!***'
s2.strip('*')
#长度
>>>s= 'hello,world'
>>>len(s)
11
#替换
>>>s='hello,world!'
>>>s.replace('h','H')
'Hello,world!'
#切片
>>>s='abcdefzhigklmn'
>>>s[0:7]
'abcdefg'
>>>s[7:14]
'higklmn'
>>>s[ :7]
'abcdefg'
>>>s[:]
'abcdefghigklmn'
>>>s[0:7:2]
'aceg'
>>>s[::2]
'acegikm'
>>>s[::-1]
'nmlkgihgfedcba'
列表
创建:
list_test=['张三',‘李四’,‘alex’]
常见操作:
#索引
>>> l = ['egon','alex','seven','yuan']
>>>l[0]
'egon'
#切片
>>>l[0:2]
['egpn','alex']
#追加
>>>l.append("eva")
>>>l
['egon','alex','seven','yuan','eva']
#删除
>>>l.remove('eva')
>>>l
['egon','alex','seven','yuan']
>>>l.pop
'yuan'
>>>l
['egon','alex','seven']
#长度
>>>len(l)
3
#包含
>>>'seven' in l
True
>>>'yuan' in l
False
#循环
>>>for i in l:
egon
alex
seven
列表与字符串----split 和 join
#分割
>>>s='hello,world'
>>>s.split(' ')
['hello','world']
>>>s2 = 'hello,world'
>>>s2.split(',')
['hello','world']
#连接
>>>l = ['hi','eva']
>>>'!'.join(l)
'hi!eva'
range
>>>range(1,100)
1,2,3,4....99
>>>list(range(1,100))
[1,2,3,4,5,6.....99]
>>>list(range(1,100,2))
[1,3,5,7,...99]
range是一个生成器,list将range转换成一个列表
#元组
创建 常见操作 同上一样
可变 不可变 数据类型 和 hash
可变类型 :列表
不可变类型:数字,字符串,元组
可变是指元素发生改变id 内存地址不改变
不可变是指元素发生改变 ID内存地址也会发生改变
可hash 的是不可变类型数据
#字典
创建
person={'name':'alex','age':20}
或
person=dict(name='seven',age=20)
或
person=({'name':'alex','age':20})
或
person=dict((['name','婉约‘],['文周’,18]))
dic={}.fromkeys(['k1','k2'],[])
print(dic)
dic['k1'].append(2)
print(dic)
{'k1': [], 'k2': []}
{'k1': [2], 'k2': [2]}
字典的常用操作
键 值 键值对
1.dic.key() 返回一个包含字典所有KEY的列表
2.dic.values() 返回一个包含字典所有value的列表
3.dic.items() 返回一个包含所有(键 值)元组的列表
#新增
1.dic['new_key]='nes_value';
2.dic.setfault(key, None)
#删除
1.dic.pop(key[,default]) 如果key存在,删除并返回key对应的vuale;如果key不存在且没有给出default的值,则引发keyerror异常
2.dic.clear() 删除字典中的所以项或元素
#修改
1.di['key'] = 'new_value' 如果key 在字典中存在,‘new_value’将替代原来value的值
2、dic.update(dic2) 将字典dic2的键值对添加到字典dic中
#查看
1.dic['key'] 返回字典中Key对应的值
2.dict.get(key,default = None)返回key对应的值 若key不存在返回default的值=
#循环
1.for k in dic.key()
2.for k,v in dic.items()
3.for k in dic
#长度
1.len(dic)
集合
引子:
l = ['张三’,‘李四’,‘老男孩’]
p = ['张三',’李四‘,’alex']
l_p = []
for i in l:
if i in p:
l_p.append(i)
print(l_p )
认识集合
集合三大特征:
1.确定性(元素必须可hash)
2.互斥性(去重)
3.无序性(集合元素没有先后之分)
注意:集合存在的意义就在于去重和关系运算
集合的关系运算
& 交集 两个集合同时存在的
| 合集 也叫并集 两个集合所有加起来
— 差集 只在前一个二不在后一个的
^ 对称差集 只在前一个或只在后一个的
包含关系
in not in 判断某元素是否在集合内
== != 两个集合是否相等
集合常见操作
单个元素的添加 :add() add类似列表append
对序列的增加 : update() update同时传入多个参数
>>> a = [1,2]
>>>a.update([3,4],[1,2,7])
>>>q
[1,2,3,4,7]
>>>a.update("hello")
>>>a
{1,2,3,4,7,'h','e,'l','l','o'}
>>>a.add('hello')
>>>a
{1,2,3,'hello',7,'h','e','l','l','o'}
元素的删除
两种删除方式
set.discard(x)不会抛出异常
set.remove(x)会抛出异常
>>>a={1,2,3,4}
>>>a.discard(1)
>>>a
{2,3,4}
>>>a.discard(1)
>>>a
{2,3,4}
>>>a.remove(1)
Traceback (most recent call last):
File "<input>",line 1, in <module>
KeyError:'pop form an empty set '
pop() 由于集合无序 pop返回结果不确定 当集合为空时调用pop会抛出KeyError 异常
clear() 清空集合