Python笔记(一)

Python笔记

删除一个文件:

import os
os.remove(filename)
例如:
os.remove("c:/123.txt")
运行就会将C盘中的123.txt文件删除

copy一个文件:

import shutil
shutil.copyfile(src,dst,*,follow_symlinks=True)
# Copy data from src to dst.
例如:
shutil.copyfile('c:/123.txt','c:/234.txt')
复制123.txt成功,新文件名为234.txxt

返回一个随机数:

import random
# 返回一个0~1之间的浮点数
random.random()
# 返回一个1~10之间(不包括10)的整数
random.randint(1,10)
# 返回一个指定范围内的浮点数
random.uniform(a,b)
# 随机返回list中的一个值
random.choice(list)

反序:

# 如果是一个list,则直接:
list.reverse()
# 若为其他类型,如 str1 = 'asdfgh'
li = []
for i in range(len(str1)-1,-1,-1):
    x = str1[i]
    li.append(x)
str(li)

去除一个list中的重复元素:

# 方法一:利用集合去重的特性
list(set(list))
# 方法二:遍历
list2 = []
for i in list:
    if i not in list2:
    list2.append(i)

在函数内部声明全局变量:

# x 就是全局变量,在函数外也可以访问使用
def func():
    global x
    pass

Python拷贝对象(深复制与浅复制):
转自:(http://greybeard.iteye.com/blog/1442259)
Python中的对象之间赋值时是按引用传递的,如果需要拷贝对象,需要使用标准库中的copy模块。
1. copy.copy 浅拷贝 只拷贝父对象,不会拷贝对象的内部的子对象。
2. copy.deepcopy 深拷贝 拷贝对象及其子对象
一个很好的例子:

import copy
a = [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']]

你可能感兴趣的:(Python)