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

不羁的心 提交于 2020-02-25 19:41:00

一、数字类型(int、float类型)

1、操作:

  • 比较运算:intfloat之间是可以比较大小(同类型之间才能比较大小)

  • 数学运算:+-*/,intfloat之间也可以进行数学运算
print(10 > 3.1)
print(10 * 3.1)

print('x' > 'y')
print([1,2,3] > [4,5])

二、字符串

优先掌握的操作:

  • 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)
  • 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)

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-4效仿字符串)

  • 1、按索引存取值(正向存取+反向存取):即可存也可以取
  • 2、切片(顾头不顾尾,步长):从一个大列表中复制出一个子列表
  • 3、长度
  • 4、成员运算in和not in
  • 5、追加:append,会向列表的末尾添加一个元素
l=['aaa','bbb']
l.append('ccc')
print(l)
l[2]='ccc' # 不存在的索引或报错,要追加值必须用append

l=['aaa','bbb','ccc']
l.insert(1,'dddd')
print(l)
  • 6、删除
# 了解:del万能删除法删除
l=['aaa','bbb','ccc']
del l[0]
print(l)

dic={'name':'egon','age':18}
del dic['name']
print(dic)

# remove删除列表元素
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)
  • 2、长度len()
  • 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)

五、总结:

  • 字符串只能按索引取值不能按索引改值

  • 对列表来说,索引存在则修改指定索引的值,索引不存在则报错

  • 切片类似于复制,在不改变原字符串的情况下复制出一个新字符串,默认从0开始,默认步长为1

  • 获取数据长度,用len()

  • 成员运算innot in:判断一个子字符串是否存在于一个大字符串

  • strip只能移除字符串左右两端的字符,不能移除中间的字符,且遇到不在strip限定范围中的字符时就停止

  • split只适用于有某种特殊规律的字符串,以某个分隔符号位切分符号把字符串切换成列表

  • 循环:字符串循环结果是字符,列表循环结果是列表中的值,字典循环结果是key。通过values()来获取字典的值,通过items()获取字典的键值对

  • append向列表末尾添加一个元素,insert向列表指定位置之前添加一个元素

  • 删除列表元素的三种方法:1、del万能删除法,2、remove(元素值)指定删除元素删除,3、pop(索引值)通过确定删除元素位置删除

  • 对字典来说,key存在则修改对应的valuekey不存在则添加一个新的key:value

  • 字典取值:1、keys()获取字典所有的key值,2、values()获取字典所有的value值,3、items()获取字典所有的键值对,相比较python2中的使用,python3中更节省内存空间

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!