Chapter 10
Python语言基础
用Python很多年,可感觉学的比较碎片,整理下之前的笔记。 学而时习之。
Python语言基础
基础
- String, List, Dictionary
- Loops and Condition
- File I/O
- Functions
- Classes
语法
- 那些可以改变对象值的可变对象方法是没有返回值的
约定和语法
- 4空格对其
- 一行一个语句,没有;
- 使用\分割长语句,(和,除外
- 大小写敏感
- 只有类名是TitleCased,通常全小写
- 常量全大写
数据类型
元组
单元素元组应在末尾添加’,‘否则会被作为分组操作符
Lists
是可变的,而strings不是
- += INPLACE_ADD
- str.iadd 会复制,但是list.iadd 会改变
deque 双端队列
- List更适合固定大小;
- deque支持性能更好的append/pop, 可设定最大队列.
分支控制
# if-else 单值的简洁写法
# value_when_true if condition else value_when_false
'Yes' if fruit == 'Apple' else 'No'
常用内置函数
信息、帮助类
- dir()
- help()
- type()
- getattr(object, name[, default])
操作类
- int(), str()
- range()
- input()/对于py2的raw_input()
- zip([iterable, …]) : returns a list of tuples
- map(function, iterable, …): 在每个元素应用函数并返回结果列表
- sorted(student_tuples, key=itemgetter(2), reverse=True)
from operator import itemgetter, attrgetter
itemgetter = object[item]
attrgetter = object.attr
import sys
# 检查当前版本信息
sys.version_info