一:数字类型:int、float字类型
1.操作:
比较运算:int与float之间是可以比较大小
数学运算:+-*/,int与float之间也可以进行数学运算
print(10 > 3.1)
print(10 * 3.1)
print('x' > 'y')
print([1,2,3] > [4,5])
print([1,2,3] > 10)
二:字符串
优先掌握的操作:
1.按索引取值(正向取+反向取) :只能取
name='egon'
print(name[0])
print(name[-1])
name[0]='E' # 错误,字符串只能按照索引取值
列表可以修改指定位置的值
l=['aaa','bbb','ccc']
l[0]='AAA'
print(l)
2.切片(顾头不顾尾,步长):从一个大的字符串中copy出来了一个子字符串,原字符串不变
msg='hello egon'
print(msg[1:4])
print(msg)
msg = 'hello egon'
把原字符串完成拷贝一遍
print(msg[0:10])
print(msg[0:len(msg)])
print(msg[0:])
print(msg[:])
隔一个取
msg='hello egon'
print(msg[0:10:2]) # 0 2 4 6 8
h l o e o
print(msg[::2]) # 0 2 4 6 8
3.长度len
msg='hello egon'
print(len(msg))
name=input('情输入你的用户名:') # name=''
if not name:# 当用户输入的内容为空的时候,条件成立
print('用户输入的内容为空')
else:
print('用户输入的内容不为空')
if len(name) == 0:
print('用户输入的内容为空')
else:
print('用户输入的内容不为空')
4.成员运算in和not in:判断一个子字符串是否存在于一个大字符串
res='egon' in 'egon is dsb'
print(res)
推荐使用
res1='egon' not in 'egon is dsb'
print(res1)
不推荐使用
res2=not 'egon' in 'egon is dsb'
print(res2)
5.移除字符串左右两侧的字符strip
res=' a bc '.strip()
print(res)
msg='*****a***b***c********'
res=msg.strip('*')
print(res)
print(msg) # 没有改变原字符串
msg='*-=</?abc*-/?'
res=msg.strip('*-=/?')
print(res)
age = 18
inp_age = input('请输入年龄:').strip() # inp_age='18 '
if inp_age.isdigit(): # '18 '.isdigit()
inp_age=int(inp_age) # int('abc')
if inp_age > age:
print('猜大了')
elif inp_age < age:
print('猜小了')
else:
print('猜对了')
else:
print('必须输入数字')
username=input('please input your username: ').strip() # ' egon'
password=input('please input your password: ').strip() # '123'
if username == 'egon' and password == '123':
print('登录成功')
else:
print('账号密码输入错误')
6.切分split:以某个分隔符号位切分符号把字符串切换成列表
userinfo='egon:18:male'
res=userinfo.split(':')
print(res)
file_info='a.txt|33333'
print(file_info.split('|'))
userinfo='egon:=-18:=-male'
print(userinfo.split('-:='))
7.循环
for i in 'abc':
print(i)
三:列表
优先掌握的操作:
1.按索引存取值(正向存取+反向存取):即可存也可以取
l = ['aaa', 'bbb', 'ccc']
l[-1]='CCC'
print(l)
2.切片(顾头不顾尾,步长):从一个大列表中复制出一个子列表
l=['aaa','bbb','ccc','ddd','eee']
res=l[1:4]
print(res)
print(l)
3.长度
l=['aaa','bbb','ccc','ddd','eee']
print(len(l))
not l
len(l) == 0
4、成员运算in和not in
l=['aaa','bbb','ccc','ddd','eee']
res='aaa' in l
print(res)
5.追加:append,会向列表的末尾添加一个元素
l=['aaa','bbb']
l.append('ccc')
l.append('ddd')
print(l)
l[0]='AAA'
l[1]='BBBBBBB'
l[2]='ccc' # 不存在的索引或报错,要追加值必须用append
print(l)
5.1.插入:insert,往指定的位置之前插入值
l=['aaa','bbb','ccc']
l.insert(1,'dddd')
print(l)
6.删除
了解
l=['aaa','bbb','ccc']
del l[0]
print(l)
dic={'name':'egon','age':18}
del dic['name']
print(dic)
掌握
l = ['aaa', 'bbb', 'ccc',[1,2,3]]
l.remove('bbb')
l.remove([1,2,3]) # 必须指定要删除的元素
print(l)
7.循环
l = ['aaa', 'bbb', 'ccc',[1,2,3]]
for item in l:
print(item)
四:字典
优先掌握的操作:
1.按key存取值:可存可取
dic={'name':'egon','age':18}
dic['name']='xxx'
print(dic)
对字典来说,key存在则修改对应的value,key不存在则添加一个新的key:value
dic['sex']='male'
print(dic)
对列表来说,索引存在则修改指定索引的值,索引不存在则报错
l=['a','b']
l[0]='A'
l[2]='c'
2.长度len
dic={'name':'egon','age':18}
print(len(dic))
3.成员运算in和not in:字典的成员运算判断的是key
dic={'name':'egon','age':18}
print(18 in dic)
print('age' in dic)
4.删除
dic={'name':'egon','age':18}
res=dic.pop('age') # 指定key删除,会返回删除的值
print(dic)
print(res)
l=['aaa','bbb','ccc']
res=l.remove('ccc') # 列表的remove操作不会返回删除的值
print(l)
print(res)
5.键keys(),值values(),键值对items()
dic={'name':'egon','age':18}
在python2中,keys(),values(),items()相当于拿到一筐鸡蛋
>>> dic={'name':'egon','age':18}
>>>
>>> dic.keys()
['age', 'name']
>>> dic.values()
[18, 'egon']
>>> dic.items()
[('age', 18), ('name', 'egon')]
>>>
在python3中,keys(),values(),items()相当于拿到一只能够下鸡蛋的老母鸡,比python2更节省内存空间
>>> dic={'name':'egon','age':18}
>>>
>>>
>>> dic.keys()
dict_keys(['name', 'age'])
>>> dic.keys()[0]
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
TypeError: 'dict_keys' object does not support indexing
>>>
>>> dic.values()
dict_values(['egon', 18])
>>> dic.items()
dict_items([('name', 'egon'), ('age', 18)])
6.循环
dic={'name':'egon','age':18}
for k in dic.keys():
print(k)
for k in dic:
print(k)
for v in dic.values():
print(v)
for k,v in dic.items(): # k,v=('name', 'egon')
print(k,v)