python2.x基础学习笔记(一)
来源:互联网 发布:linux 查看字体 编辑:程序博客网 时间:2024/06/05 04:14
python文件格式
第一行指定脚本运行环境的python路径(可选)
第二行指定文件编码
需要添加模块注释(一个文件就是一个模块),方便使用 __doc__
调取
需要为每个函数与类添加注释,使用三引号,方便使用 __doc__
调取
使用四个空格的缩进,不需要花括号
#!/Users/nizhenyang/Python_Envs/python2.7/bin/python# -*- coding:utf-8 -*"""this is a test module"""def test(): """test is a test function""" passclass TestClass (object): """TestClass is a test class""" pass# 使用这个语句判断其是否为主模块if __name__ == '__main__': foo = TestClass() test()
获取模块与方法的帮助
- module.__doc__
- func.__doc__
- dir(module)
- help(module)
- help(func)
python中变量为对对象的引用
变量只是一个对对象的引用,类似于c中的指针,只不过其可以指向任何对象的地址
使用 id()
获取对象的地址
num = 2var1 = numvar2 = numprint "id(var1): %d, id(var2): %d, %s" % (id(var1), id(var2), id(var1) == id(var2))# id(var1): 140354092286448, id(var2): 140354092286448, Trueprint var1 is var2# True
使用 copy.deepcopy
进行深复制
python的核心数据类型
- 数字 int long float complex bool
- 字符 str unicode
- 列表 list
- 字典 dict
- 元祖 tuple
- 文件 file
- 集合 set frozenset
- 类类型
- None
- 管道 pipes fifos
- sockets
数据类型之间的转换
- str() repr() format(): * –> string (注:str是给人用的,repr是给编译器用的 eval)
- int() float(): * –> number
- list(): string –> list
- tuple(): string –> tuple
- set(): string –> set
dict(d): (k, v)序列 [(‘a’, 1), (‘b’, 2), (‘c’, 3)]
chr(): int –> char
- ord(): char –> int
- hex(): int –> 十六进制
- bin(): 二
- oct(): 八
number之间的一些运算
- 4.2 // 1.2 计算出的结果不包括小数
- 1 ^ 2 异或
- 1 ** 2 乘方
- 1 & 2 按位与运算
- ^ 1 取反
- 1 | 2 按位或运算
- math 内建模块
number科学计数输出
num = 4.6print "%f, %e, %g" % (num, num, num)# 4.600000, 4.600000e+00, 4.6
string的相关使用
使用unicode:在文件开始处加上# -*- coding:utf-8 -*
或在字符串前加’u’ u'共产党万岁'
对字符串进行切片
str = '0123456789'print str[:]print str[1:4]print str[1:]print str[1::3]print str[-5:]print str[-1::-1]# 输出结果#0123456789#123#123456789#147#56789#9876543210
一些常用方法
- 首字母大写
- str.capitalize()
- 子串首先出现的位置
- str.index()
- 连接 “”.join([1,2,3,4])
- str.join()
- 替换
- str.replace()
- 划分
- str.split()
- trim
- str.strip()
序列类型 list tuple set
通用方法
- 切片
- len()
- min()
- max()
- sum()
- all()
- any()
- +
- *
- in
- not in
可变序列的用通用操作
- s[i]=v 元素复制
- s[i:j] = t 切片赋值
- del s[i]
- del s[i:j]
- del s[i:j:stride]
list
容器类型,通过索引访问,可变对象,异构,任意嵌套
- append() 添加
- extend() 原处扩展列表
- insert() 插入
- pop() 按索引删除
- remove() 按元素删除
- range(10) ==> [0, 1, …. 8, 9]
- 复制 list ll[:] | copy.deepcopy()
tuple
与list相似,但是不可变,长度固定 支持切片
元祖本身不可变,但是其中嵌套的可变
set
一组无序排列的可哈希的值,支持集合关系测试 交并补差,不支持索引,元素获取,切片,没有特定语法格式,只能通过工厂函数创建
- s.copy
- s.difference 差集
- s.intersection & 交集
- s.symmetric_difference() ^ 对称差
- s1 | s2 并集
- pop
dict
键值组合,关联数组,散列表
len(dict) 字典中元素的个数
dd = {}
- 清空 d1.clear()
- 复制 d2 = d1.copy()
- 获取 d1.get(k) : 无异常抛出 比较 d1[k]
- 判断是否有key d1.has_key(k)
- 键值为元祖的列表 d1.items() t1, t2 = d1.items() - pack
- 键列表,值列表 d1.keys() d1.values()
- 随机弹出键值映射 d1.popitem()
- 类似于extend d1.update()
- 迭代器 ddd = d1.iteritems() ddk = d1.iterkeys()
- 显示构造 d1.viewitems() d1.viewkeys() d1.viewvalues-
- 快速构建字典 zip : dict(zip(‘xzy’, ‘123’)) ==> {‘y’: ‘3’, ‘x’: ‘1’, ‘z’: ‘2’}
阅读全文
0 0
- python2.x基础学习笔记(一)
- 【Python2.7 学习笔记】Python基础(一)
- python2.7学习笔记(一)数据类型及基础
- 【Python2.7 学习笔记】函数(一)
- Python2.7学习笔记(一)
- 【修正版】Python基础学习(一)——安装与配置python2.7.x环境(linux)
- python2.x学习小记
- 【Angular4.X学习笔记一】对Angular的基础认识
- python2基础学习
- 【Python2.7 学习笔记】Python 基础(二)
- 【Python2.7 学习笔记】Python 基础(三)切片
- 【Python2.7 学习笔记】Python 基础(四)调试
- Cocos2d-x学习笔记(一)
- cocos2d-x 学习笔记(一)
- Python3.x学习笔记(一)
- Python2.7 学习笔记 (一)——基础知识
- python3 学习笔记之 urllib.request《一》 (urllib2 in python2)
- cocos2d-x 3.x学习笔记<一>
- Dbvisualier9 运行sql脚本时,log窗口的结果中出现乱码的解决方法
- jvm垃圾收集算法
- des密匙不同却都能解开
- 安装官方原版win10系统
- PAT乙级1038 统计同成绩学生
- python2.x基础学习笔记(一)
- evdev事件处理器数据处理过程
- echo(),print(),print_r()之间的区别?
- 查看 SELinux状态及关闭SELinux
- 利用区块链技术健全大数据价值流通体系
- 酷科技 | Moto Z2 Force 模块化智能手机
- java并发编程学习(七) volatile的内存语义
- 重磅 | 嘉年华:2017中国通信产业大会(CCIC2017)与你相约12月
- 小区