跟老齐学Python之数据类型总结


Posted in Python onSeptember 24, 2014

下面的表格中列出了已经学习过的数据类型,也是python的核心数据类型之一部分,这些都被称之为内置对象。

对象,就是你面对的所有东西都是对象,看官要逐渐熟悉这个称呼。所有的数据类型,就是一种对象。英文单词是object,直接的汉语意思是物体,这就好像我们在现实中一样,把很多我们看到和用到的都可以统称为“东西”一样。“东西”就是“对象”,就是object。在编程中,那个所谓面向对象,也可以说成“面向东西”,是吗?容易有歧义吧。

对象类型 举例
int/float 123, 3.14
str 'qiwsir.github.io'
list [1, [2, 'three'], 4]
dict {'name':"qiwsir","lang":"python"}
tuple (1, 2, "three")
set set("qi"), {"q", "i"}

不论任何类型的数据,只要动用dir(object)或者help(obj)就能够在交互模式下查看到有关的函数,也就是这样能够查看相关帮助文档了。举例:

>>> dir(dict)

看官需要移动鼠标,就能够看全(下面的本质上就是一个list):

['__class__', '__cmp__', '__contains__', '__delattr__', '__delitem__', '__doc__', '__eq__', '__format__', '__ge__', '__getattribute__', '__getitem__', '__gt__', '__hash__', '__init__', '__iter__', '__le__', '__len__', '__lt__', '__ne__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__setattr__', '__setitem__', '__sizeof__', '__str__', '__subclasshook__', 'clear', 'copy', 'fromkeys', 'get', 'has_key', 'items', 'iteritems', 'iterkeys', 'itervalues', 'keys', 'pop', 'popitem', 'setdefault', 'update', 'values', 'viewitems', 'viewkeys', 'viewvalues']

先略过__双下划线开头的哪些,看后面的,就是dict的内置函数。至于详细的操作方法,通过类似help(dict.pop)的方式获得。这是前面说过的,再说一遍,加深印象。

我的观点:学习,重要的是学习方法,不是按部就班的敲代码。

今天既然是复习,就要在原来基础上提高一点。所以,也要看看上面那些以双下划线开头的东西,请看官找一下,有没有发现这个:"__doc"。这是什么,它是一个文件,里面记录了对当前所查看的对象的详细解释。可以在交互模式下这样查看:

>>> dict.__doc__
显示应该是这样的:

"dict() -> new empty dictionary\ndict(mapping) -> new dictionary initialized from a mapping object's\n (key, value) pairs\ndict(iterable) -> new dictionary initialized as if via:\n d = {}\n for k, v in iterable:\n d[k] = v\ndict(**kwargs) -> new dictionary initialized with the name=value pairs\n in the keyword argument list. For example: dict(one=1, two=2)"

注意看上面乱七八糟的英文中,是不是有\n符号,这是什么?前面在讲述字符串的时候提到了转义符号\,这是换一行。也就是说,如果上面的文字,按照排版要求,应该是这样的(当然,在文本中,如果打开,其实就是排好版的样子)。

"dict() -> new empty dictionary

dict(mapping) -> new dictionary initialized from a mapping object's

(key, value) pairs

dict(iterable) -> new dictionary initialized as if via:

d = {}

for k, v in iterable:

d[k] = v

dict(**kwargs) -> new dictionary initialized with the name=value pairs

in the keyword argument list. For example: dict(one=1, two=2)"

可能排版还是不符合愿意。不过,看官也大概能看明白了。我要说的不是排版,要说的是告诉看官一种查看某个数据类型含义的方法,就是通过obj.doc文件来看。

嘿嘿,其实有一种方法,可以看到排版的结果的:

>>> print dict.__doc__

dict() -> new empty dictionary

dict(mapping) -> new dictionary initialized from a mapping object's

    (key, value) pairs

dict(iterable) -> new dictionary initialized as if via:

    d = {}

    for k, v in iterable:

        d[k] = v

dict(**kwargs) -> new dictionary initialized with the name=value pairs

    in the keyword argument list.  For example:  dict(one=1, two=2)

上面那么折腾一下,就是为了凑篇幅,不然这个总结的东西太少了。

总之,只要用这种方法,你就能得到所有帮助文档,随时随地。如果可以上网,到官方网站,是另外一种方法。

还需要再解释别的吗?都多余了。唯一需要的是看官要能会点英语。不过我相信看官能够读懂,我这个二把刀都不如的英语水平,还能凑合看呢,何况看官呢?

总结不是意味着结束,是意味着继往开来。精彩还在后面,这里只是休息。

Python 相关文章推荐
python通过ElementTree操作XML获取结点读取属性美化XML
Dec 02 Python
python实现给字典添加条目的方法
Sep 25 Python
python使用Queue在多个子进程间交换数据的方法
Apr 18 Python
python搭建微信公众平台
Feb 09 Python
深入探究Django中的Session与Cookie
Jul 30 Python
使用python爬取B站千万级数据
Jun 08 Python
python 正确保留多位小数的实例
Jul 16 Python
详解Python sys.argv使用方法
May 10 Python
python主线程与子线程的结束顺序实例解析
Dec 17 Python
python缺失值的解决方法总结
Jun 09 Python
python中Pyqt5使用Qlabel标签播放视频
Apr 22 Python
关于的python五子棋的算法
May 02 Python
跟老齐学Python之集合的关系
Sep 24 #Python
跟老齐学Python之集合(set)
Sep 24 #Python
跟老齐学Python之有点简约的元组
Sep 24 #Python
跟老齐学Python之dict()的操作方法
Sep 24 #Python
Python单链表的简单实现方法
Sep 23 #Python
Python中bisect的用法
Sep 23 #Python
python元组操作实例解析
Sep 23 #Python
You might like
PHP面向对象编程快速入门
2006/12/14 PHP
php 大数据量及海量数据处理算法总结
2011/05/07 PHP
PHP笔记之:日期函数的使用介绍
2013/04/24 PHP
PHP类的自动加载与命名空间用法实例分析
2020/06/05 PHP
基于jQuery的Spin Button自定义文本框数值自增或自减
2010/07/17 Javascript
nodejs npm package.json中文文档
2014/09/04 NodeJs
Node.js中JavaScript操作MySQL的常用方法整理
2016/03/01 Javascript
Angular 理解module和injector,即依赖注入
2016/09/07 Javascript
vue-router+vuex addRoutes实现路由动态加载及菜单动态加载
2017/09/28 Javascript
js实现rem自动匹配计算font-size的示例
2017/11/18 Javascript
JS用最简单的方法实现四舍五入
2019/08/27 Javascript
layui 监听select选择 获取当前select的ID名称方法
2019/09/24 Javascript
node.js 微信开发之定时获取access_token
2020/02/07 Javascript
el-table表头根据内容自适应完美解决表头错位和固定列错位
2021/01/07 Javascript
vue watch监控对象的简单方法示例
2021/01/07 Vue.js
[00:15]天涯墨客终极技能展示
2018/08/25 DOTA
Python连接mssql数据库编码问题解决方法
2015/01/01 Python
python获取元素在数组中索引号的方法
2015/07/15 Python
恢复百度云盘本地误删的文件脚本(简单方法)
2017/10/21 Python
python3+opencv3识别图片中的物体并截取的方法
2018/12/05 Python
windows系统中Python多版本与jupyter notebook使用虚拟环境的过程
2019/05/15 Python
python实现随机漫步方法和原理
2019/06/10 Python
python mqtt 客户端的实现代码实例
2019/09/25 Python
python下载库的步骤方法
2019/10/12 Python
CSS3 仿微信聊天小气泡实例代码
2017/04/05 HTML / CSS
HTML5 3D衣服摇摆动画特效
2016/03/17 HTML / CSS
香港钟表珠宝首饰商城:OneMallTime网摩间
2016/10/14 全球购物
经典c++面试题六
2012/01/18 面试题
总务岗位职责
2013/11/19 职场文书
中国央视网签名寄语
2014/01/18 职场文书
《小壁虎借尾巴》教学反思
2014/02/16 职场文书
绿色环保标语
2014/06/12 职场文书
买房子个人收入证明
2014/10/12 职场文书
追悼会悼词大全
2015/06/23 职场文书
pytorch 运行一段时间后出现GPU OOM的问题
2021/06/02 Python
anaconda python3.8安装后降级
2021/06/11 Python