系统函数
open()
1简单的文件读写
1 | f = open("123.txt", "r"); |
2读取数据到矩阵
1 | #读取txt二维数据到矩阵 |
os.getcwd()
获得当前工作目录1
2import os
print os.getcwd()
set()
将一个字符串拆成 单个字符 组成的字符集,可进行关系测试,删除重复数据,还可以计算交集、差集、并集等。
1 | 'runoob') x = set( |
copy()
- = 赋值 传引用 =》内存不独立 =》 同步跟随变化
- copy 浅拷贝 只拷贝父对象 =》父对象内存独立 =》只有子对象跟随变化
- deepcopy 深拷贝 拷贝对象及其子对象 =》全部内存独立 =》 不跟随变化
(深拷贝 和 浅拷贝——只对数组结构有用,int之类的没用)1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18a = [1, 2, 3, 4, ['a', 'b']] #原始对象
b = a #赋值,传对象的引用
c = copy.copy(a) #对象拷贝,浅拷贝
d = copy.deepcopy(a) #对象拷贝,深拷贝
a.append(5) #修改对象a
a[4].append('c') #修改对象a中的['a', 'b']数组对象
print 'a = ', a
print 'b = ', b
print 'c = ', c
print 'd = ', d
输出结果:
a = [1, 2, 3, 4, ['a', 'b', 'c'], 5]
b = [1, 2, 3, 4, ['a', 'b', 'c'], 5]
c = [1, 2, 3, 4, ['a', 'b', 'c']]
d = [1, 2, 3, 4, ['a', 'b']]
zip()
zip函数接受任意多个序列作为参数,返回一个tuple列表1
2
3
4
5
6
7
8
9
10
11
12print(zip(range(3),range(5)))
[(0, 0), (1, 1), (2, 2)]
for i,j in zip(range(3),range(5)):
print(i)
print(j)
0
0
1
1
2
2
运算符and和or
注意:and or 是python特有的短路运算符
- 表达式从左至右运算,若 or 的左侧逻辑值为 True ,则短路 or 后所有的表达式(不管是 and 还是 or),直接输出 or 左侧表达式 。
- 表达式从左至右运算,若 and 的左侧逻辑值为 False ,则短路其后所有 and 表达式,直到有 or 出现,输出 and 左侧表达式到 or 的左侧,参与接下来的逻辑运算。
- 若 or 的左侧为 False ,或者 and 的左侧为 True 则不能使用短路逻辑。
自定义功能函数
随机生成一组字符串
1 | import random |