Chinaunix首页 | 论坛 | 博客
  • 博客访问: 186785
  • 博文数量: 69
  • 博客积分: 1430
  • 博客等级: 上尉
  • 技术积分: 686
  • 用 户 组: 普通用户
  • 注册时间: 2008-06-22 11:12
文章存档

2011年(1)

2010年(11)

2009年(35)

2008年(22)

我的朋友

分类: LINUX

2009-05-02 12:26:05

最近突然对群体计算,人工智能这些东西感点兴趣,想动手写点小玩具,那么Python就必不可少了。
  1. 我的语法依赖于缩进。每一级缩进表示一个新的代码块,从属于这个语句块的上一级缩进。
  2. 我没有多行注释,#注释符相当于C++中的//注释。
  3. 如果您的脚本中包括英文之外的字符,需要您在程序开头用注释写一行编码说明,就像这样:#-*-coding:utf-8-*-
  4. type函数获取对象的类型,而这个类型也是一个对象。
  5. C++变量在定义时,就决定了一个变量的类型,这使得编译器可以确保它的类型安全。而Python的对象采用了完全不同的命名—对象绑定机制。每一个像我这样的对象,都通过与我绑定的命名访问。相对来说,你所见到的变量x,其实是与对象绑定的命名,所以,变量不需要预定义,绑定后即可访问。在x=1之后,进行x = 'b'操作,只是将命名x重新绑定于字符串对象'b'。
  6. 事实上,您几乎可以在运行期任意改变对象和类型的行为。
  7. 基本上c语言字符串中的转义定义在我这里都可以使用。如果不想让内容中的\发生转义,可以在字符串定义前加一个字符r。
  8. id函数以一个Python对象为参数,返回它的内部标识符。通过这个唯一标识我们可以看出,两个值相同的字符串变量实际上总是引用同一个对象。
  9. 如果你需要连接若干字符串,我更推荐您使用我的成员方法join,因为但大量的连加操作会生成很多中间字符串,这些对象可能永远都不会被调用。
  10. Python的数值定义、进制转换和隐式转换规则类似C,支持四则运算和幂运算。也有浮点数和整数之分。Python的幂运算用**运算符表示。
  11. Python中,我,长整型long代表一种“无限长整数”。
  12. 在Python中定义和使用复数非常容易:
    >>> 1+1j + 3 #我与实数的混合计算
    (4+1j)
  13. list就是我,Python中最常见的线性容器。
  14. 在list对象中,您可以混合放入不同的元素,如果这让您难以接受,请把它看做是std::list。也可以像C数组一样,按位置索引。
  15. list可以用作链表,也可以当作堆栈和队列使用。
  16. 我set是一个不重复的元素集合。可以通过调用set(...)构造函数来生成set对象。传入的重复元素会自动合并。我还支持交、并、差、补等操作。
  17. 我是python中的键-值映射对象dict,相当于C++中的std::map。我要求key传入的必须是不可变的类型。比如整数或是str,由于tuple是COW类型,也可以做为键,相应的,list不可以做为dict的键。
  18. 类似std::map,我存储键值对时,会根据优化性能的原则进行排列,所以外部访问时应该视我为一个无序的键值对容器。如果需要顺序查找数据,可以调用我的成员变量keys(),得到所有键的列表后,再对其进行排序,然后根据这个列表访问字典对象。
阅读(721) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~