设为首页 收藏本站
查看: 837|回复: 1

[经验分享] python入门基础整理--数据类型

[复制链接]

尚未签到

发表于 2017-5-2 09:54:36 | 显示全部楼层 |阅读模式
基本数据类型:
    1,数值:主要包括int, float, bool等类型。
    2,字符串
    单独把str作为一类是因为str具有一些容器的性质,它包含了字符(虽然python没有字符类型),可以随机访问其中的部分元素,在脚本解析器里执行dir(string)可以看到字符串的所有方法及属性,介绍几个常用的方法。

>>> string='string,String,STRING'
>>> string[3:9]
'ing,St'
>>> string.startswith('str')
True
>>> string.split(',')
['string', 'String', 'STRING']
>>> string
'string,String,STRING'
>>> string.islower()
False
>>> string.lower()
'string,string,string'
>>> string.upper()
'STRING,STRING,STRING'

容器类数据结构:
1,列表:
    列表是处理一组有序项目的数据结构,即你可以在一个列表中存储一个序列的项目。一旦你创建了一个列表,你可以添加、删除或是搜索列表中的项目。由于你可以增加或删除项目,我们说列表是可变的数据类型,即这种类型是可以被改变的。
    介绍几个列表的方法
insert(i, x) ---- 在指定位置插入一项。第一自变量是要在哪一个元素前面插入,用下标表示例如,list.insert(0, x)在列表前面插入,list.insert(len(list), x)等价于list.append(x)。
append(x) ---- 等价于list.insert(len(a), x)
index(x) ---- 在列表中查找值x然后返回第一个值为x的元素的下标。没有找到时出错。
remove(x) ---- 从列表中删去第一个值为x的元素,找不到时出错。
sort() ---- 对列表元素在原位排序。注意这个方法改变列表,而不是返回排序后的列表。
reverse() ---- 把列表元素反序。改变列表。
count(x) ---- 返回x在列表中出现的次数。

>>> list = ['a','c','g','e','t','b','f','d','g']
>>> list.insert(3,'d')
>>> list
['a', 'c', 'g', 'd', 'e', 't', 'b', 'f', 'd', 'g']
>>> list.append('c')
>>> list
['a', 'c', 'g', 'd', 'e', 't', 'b', 'f', 'd', 'g', 'c']
>>> list.index('c')
1
>>> list.remove('c')
>>> list.index('c')
9
>>> list.count('d')
2
>>> list.sort()
>>> list
['a', 'b', 'c', 'd', 'd', 'e', 'f', 'g', 'g', 't']
>>> new_list = ['a','c','g','d','b']
>>> new_list.reverse()
>>> new_list
['b', 'd', 'g', 'c', 'a']

可以使用help(list)获得列表对象的所有方法。
2,元组:
    元组和列表十分类似,只不过元组和字符串一样是不可变的,即你不能修改元组。元组通常用在使语句或用户定义的函数能够安全地采用一组值的时候,即被使用的元组的值不会改变。
举例:

>>> zoo = ('wolf', 'elephant', 'penguin')
>>> print len(zoo)
3
>>> new_zoo = ('monkey', 'dolphin', zoo)
>>> print len(new_zoo)
3
>>> print new_zoo
('monkey', 'dolphin', ('wolf', 'elephant', 'penguin'))
>>> print new_zoo[2]
('wolf', 'elephant', 'penguin')
>>> print new_zoo[2][1]
elephant

从代码中可以看出列表和元组的区别。
3,字典:
    字典是一系列未排序的“键值:值”的集合,在同一字典内键值是互不相同的。对字典的主要操作是以某个键值保存一个值,以及给定键值后查找对应的值。也可以用del删除某个键值:值对。如果用一个已有定义的键值保存某个值则原来的植被遗忘。用不存在的键值去查找会出错。
    字典不象序列,它不是用在一个范围之内的数字下标来索引,而是用键值 来索引,键值可以是任何不可变类型。字符串和数值总可以作键值。如果元组只包含字符串 、数值或元组,则元组也可以作键值使用,因为元组是不可更改的。列表不能用作键值,因为列表可以用其append()方法就地改变值。
    字典对象的keys()方法返回字典中所有键值组成的列表,次序是随机的。需要排序时只要对返回的键值列表使用sort()方法。为了检查某个键值是否在字典中,使用字典的has_key()方法。
字典使用举例:

>>> employee_id = {'Sammy':1, 'david':2, 'shirley':3,'jack':4,'guido':5}
>>> employee_id['shirley']
3
>>> employee_id.has_key('fly')
False
>>> employee_id.keys()
['shirley', 'Sammy', 'guido', 'jack', 'david']
>>> employee_id
{'shirley': 3, 'Sammy': 1, 'guido': 5, 'jack': 4, 'david': 2}
>>> del employee_id['david']
>>> employee_id
{'shirley': 3, 'Sammy': 1, 'guido': 5, 'jack': 4}
>>> for name, id in employee_id.items():
...     print 'employee %s id is %d' % (name, id)
...
employee shirley id is 3
employee Sammy id is 1
employee guido id is 5
employee jack id is 4
>>> if 'shirley' in employee_id or employee_id.has_key('shirley'):
...     print employee_id.get('shirley')
...
3

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-371951-1-1.html 上篇帖子: python多线程ctrl-c退出问题 下篇帖子: [Python源码学习]之整数类型PyIntObject
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表