Python入门11 —— 基本数据类型的操作

一:数字类型: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)
上一篇:day04学习笔记-基本数据类型


下一篇:02 基本数据类型