对象列表Python概述:C++程序员眼中的Python
2013-05-29 20:15
375 查看
在写这篇文章之前,xxx已写过了几篇关于改对象列表主题的文章,想要了解的朋友可以去翻一下之前的文章
字符串查找应用find(),返回偏移量位置。
字符串替换应用replace返回替换后的串。
字符串的split应用split函数。分红的结果存入一个列表。
字符串有基本操纵的一些方法,如:upper、isalpha、rstrip等。
三引号可定义一段庞杂文本。这些文字会被转化为响应的串,包括制表符等符号。同时也可用作注释,相当于/***/
这条语句会将每一个list中的元素赋值给value,检查statment中条件是否符合,然后运行func(value),将其值创立为新列表中的一个项。例如:[row[1] for row in M if row[1]%2 == 0]。
表示方法为{key:value,key:value...}。
value可所以任何数据类型比如列表。内存是主动管理的,不需要释放。
字典的输出并不是有序的,我揣测内部实现方法是树。
固定次序输出可先将键排序,再用for key in Keys: 的方法。或直接用sorted()方法。例如:for key in sorted(D): 。
每一个声明出的变量名并没有现实的类型,
变量名是一个void指针,指向对象
。另一方面,对象晓得自己的类型,每个对象都包括了一个头部信息,标记了这个对象的类型。赋值有三个操纵:创立一个对象、创立一个变量、将变量与对象连接。
当变量名指向新对象时,旧对象内存就被回收(这要是能不慢都见鬼了)。
每日一道理
谁说人与人隔着遥远的重洋,谁说心与心设着坚固的堤防?十六岁的鸟儿飞上天空,总会找到落脚的枝头。
变量不能指向变量。只能指向对象。因此当两个变量之间赋值时,现实意思是要保持一致。他们现实上同享了对象。这样就不会存在内存访问的问题,代价就是效率低到爆。当原变量更改而不是对象更改时,会产生分歧。因此对于列表L2=L1,当L1中的值改变时,对象变了,变量并没有变,所以L2的值也会变化,如果你不希望这样可以简单的应用分片技术:L2 = L1[:]。如果是字典的话,就要import copy,应用copy.copy()函数了。
应用"=="操纵符,测试两个被引用的对象是否值相同。"is"操纵符,检查对象是否指向同一对象。注意小的数字和字符串是在缓存中被复用的。因此is判断会为真。
大概就写这些,当前可能在这里再增加。有须要也会新写一篇,欢迎大家关注。
本篇博客出自阿修罗道,转载请注明出处:/article/1505626.html
文章结束给大家分享下程序员的一些笑话语录:
AdobeFlash拖垮Windows拖垮IE!又拖垮Linux拖垮Ubuntu拖垮FirxEox!还拖垮BSD拖垮MacOS拖垮Safri!简直无所不拖!AdobeFlash滚出网路世界!不要以为市占有率高就可以持续出烂货产品!以后替代品多得是!
---------------------------------
原创文章 By
对象和列表
---------------------------------
字符串查找应用find(),返回偏移量位置。
字符串替换应用replace返回替换后的串。
字符串的split应用split函数。分红的结果存入一个列表。
字符串有基本操纵的一些方法,如:upper、isalpha、rstrip等。
三引号可定义一段庞杂文本。这些文字会被转化为响应的串,包括制表符等符号。同时也可用作注释,相当于/***/
这条语句会将每一个list中的元素赋值给value,检查statment中条件是否符合,然后运行func(value),将其值创立为新列表中的一个项。例如:[row[1] for row in M if row[1]%2 == 0]。
表示方法为{key:value,key:value...}。
value可所以任何数据类型比如列表。内存是主动管理的,不需要释放。
字典的输出并不是有序的,我揣测内部实现方法是树。
固定次序输出可先将键排序,再用for key in Keys: 的方法。或直接用sorted()方法。例如:for key in sorted(D): 。
每一个声明出的变量名并没有现实的类型,
变量名是一个void指针,指向对象
。另一方面,对象晓得自己的类型,每个对象都包括了一个头部信息,标记了这个对象的类型。赋值有三个操纵:创立一个对象、创立一个变量、将变量与对象连接。
当变量名指向新对象时,旧对象内存就被回收(这要是能不慢都见鬼了)。
每日一道理
谁说人与人隔着遥远的重洋,谁说心与心设着坚固的堤防?十六岁的鸟儿飞上天空,总会找到落脚的枝头。
变量不能指向变量。只能指向对象。因此当两个变量之间赋值时,现实意思是要保持一致。他们现实上同享了对象。这样就不会存在内存访问的问题,代价就是效率低到爆。当原变量更改而不是对象更改时,会产生分歧。因此对于列表L2=L1,当L1中的值改变时,对象变了,变量并没有变,所以L2的值也会变化,如果你不希望这样可以简单的应用分片技术:L2 = L1[:]。如果是字典的话,就要import copy,应用copy.copy()函数了。
应用"=="操纵符,测试两个被引用的对象是否值相同。"is"操纵符,检查对象是否指向同一对象。注意小的数字和字符串是在缓存中被复用的。因此is判断会为真。
大概就写这些,当前可能在这里再增加。有须要也会新写一篇,欢迎大家关注。
本篇博客出自阿修罗道,转载请注明出处:/article/1505626.html
文章结束给大家分享下程序员的一些笑话语录:
AdobeFlash拖垮Windows拖垮IE!又拖垮Linux拖垮Ubuntu拖垮FirxEox!还拖垮BSD拖垮MacOS拖垮Safri!简直无所不拖!AdobeFlash滚出网路世界!不要以为市占有率高就可以持续出烂货产品!以后替代品多得是!
---------------------------------
原创文章 By
对象和列表
---------------------------------
相关文章推荐
- Python概述:C++程序员眼中的Python
- Python概述:C++程序员眼中的Python
- C++程序员学Python:Python里面的面向对象
- 简明python教程 --C++程序员的视角(四):容器类型(字符串、元组、列表、字典)和参考
- 简明python教程 --C++程序员的视角(四):容器类型(字符串、元组、列表、字典)和参考
- 简明python教程 --C++程序员的视角(四):容器类型(字符串、元组、列表、字典)和参考
- 简明python教程 --C++程序员的视角(八):标准库
- Inside C++ object Model--对象模型概述
- C++入门学习:对象初始化列表
- C++对象模型笔记:概述
- vs2015中c++中multiset容器定义对象时参数列表中显式调用greater无法被识别的解决办法
- EA&UML日拱一卒-0基础学习微信小程序(9)-C++程序员眼中的app.js
- C++中的初始化列表中可以对那些变量或对象进行初始化
- Python之列表生成式、生成器、可迭代对象与迭代器
- 关于Python的列表append()返回None对象
- C++程序员眼中的go Part 3
- 简明python教程 --C++程序员的视角(九):函数式编程、特殊类方法、测试及其他
- 给C++程序员的Python初学指南 / Guide to Python for C++ Programmers
- Python列表List保存对象的指针
- c/c++栏目中类和对象-4的python实现