跟老齐学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科学计算环境推荐——Anaconda
Jun 30 Python
Python HTTP客户端自定义Cookie实现实例
Apr 28 Python
python3使用pyqt5制作一个超简单浏览器的实例
Oct 19 Python
基于Python socket的端口扫描程序实例代码
Feb 09 Python
分享一下Python数据分析常用的8款工具
Apr 29 Python
解决python3 安装完Pycurl在import pycurl时报错的问题
Oct 15 Python
python3+PyQt5 创建多线程网络应用-TCP客户端和TCP服务器实例
Jun 17 Python
pytorch 在sequential中使用view来reshape的例子
Aug 20 Python
python中的selenium安装的步骤(浏览器自动化测试框架)
Mar 17 Python
python脚本监控logstash进程并邮件告警实例
Apr 28 Python
如何在Win10系统使用Python3连接Hive
Oct 15 Python
详解修改Anaconda中的Jupyter Notebook默认工作路径的三种方式
Jan 24 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类中Static方法效率测试代码
2010/10/17 PHP
eclipse php wamp配置教程
2016/06/30 PHP
Thinkphp开发--集成极光推送
2017/09/15 PHP
php支付宝系列之电脑网站支付
2018/05/30 PHP
PHP 面向对象程序设计之类属性与类常量实现方法分析
2020/04/13 PHP
Prototype Object对象 学习
2009/07/12 Javascript
javascript 伪数组实现方法
2010/10/11 Javascript
解析ScrollPic在ie8下只滚动一遍,然后变为空白 ie6,ie7,chrome,firefox正常
2013/06/26 Javascript
细说javascript函数从函数的构成开始
2013/08/29 Javascript
Javascript中3个需要注意的运算符
2015/04/02 Javascript
JavaScript的类型、值和变量小结
2015/07/09 Javascript
快速掌握Node.js之Window下配置NodeJs环境
2016/03/21 NodeJs
JS数组排序方法实例分析
2016/12/16 Javascript
Angular.js之作用域scope'@','=','&'实例详解
2017/02/28 Javascript
React Native AsyncStorage本地存储工具类
2017/10/24 Javascript
详解如何在react中搭建d3力导向图
2018/01/12 Javascript
Vue下路由History模式打包后页面空白的解决方法
2018/06/29 Javascript
看看“疫苗查询”小程序有温度的代码
2018/07/31 Javascript
vue中导出Excel表格的实现代码
2018/10/18 Javascript
[06:44]2014DOTA2国际邀请赛-钥匙体育馆开战 开幕式振奋人心
2014/07/19 DOTA
python实现堆栈与队列的方法
2015/01/15 Python
Python socket编程实例详解
2015/05/27 Python
Django基于ORM操作数据库的方法详解
2018/03/27 Python
Python实现堡垒机模式下远程命令执行操作示例
2019/05/09 Python
Python学习笔记之文件的读写操作实例分析
2019/08/07 Python
python的json包位置及用法总结
2020/06/21 Python
Pycharm2020.1安装无法启动问题即设置中文插件的方法
2020/08/07 Python
CSS3实现简易版的刮刮乐效果
2016/09/27 HTML / CSS
AmazeUI 输入框组的示例代码
2020/08/14 HTML / CSS
美国玛丽莎收藏奢华时尚商店:Marissa Collections
2016/11/21 全球购物
美国在线乐器和设备商店:Musician’s Friend
2018/07/06 全球购物
澳大利亚先进的皮肤和激光诊所购物网站:Soho Skincare
2018/10/15 全球购物
Linux面试经常问的文件系统操作命令
2016/10/04 面试题
马云北大演讲完整版:真心话,什么才是阿里的核心竞争力?
2014/04/04 职场文书
军训拉歌口号
2014/06/13 职场文书
php png失真的原因及解决办法
2021/10/24 PHP