抱住“温故而知新”嘅学习态度,我地继续总结week1嘅学习笔记嘻嘻嘻!
Part One:函数
1.1 基础定义
函数是完成特定功能的语句组,一般分有自定义函数和预定义函数
其语法形式:
def 函数名(参数列表):#如果没有可以不用填写
函数体
你可以定义一个由自己想要功能的函数,以下是简单的规则:
函数代码块以 def 关键词开头,后接函数标识符名称和圆括号()。
任何传入参数和自变量必须放在圆括号中间。圆括号之间可以用于定义参数。
函数的第一行语句可以选择性地使用文档字符串—用于存放函数说明。
函数内容以冒号起始,并且缩进。
return [表达式] 结束函数,选择性地返回一个值给调用方。不带表达式的return相当于返回 None。
1.2 识别中文操作
#coding : utf8
#encoding:utf8
# -*- coding: utf8 -*-
1.3 局部变量和全局变量
global():强制声明全局变量
1.4 函数返回值
默认返回 none,或者return 返回值,任意类型,return执行后,函数终止
1.5 传值
向函数传元组值:fun(*args)
向函数传字典值: fun(**kwords)
1.6 处理冗余参数
def f(x,*args,**kwargs):
print (x)
print (args)
print(kwargs)
1.6 lambda表达式
定位:快速定义一行的函数
语法:lambda的冒号前是参数,可以有多个参数,用逗号隔开,冒号右边是返回值。如:g=lambda x,y : x*y
1.7 reduce函数
实现递归的功能,如:完成n的阶乘
def f(x,y):
return(x*y)
l=range(1,6)
reduce(f,l)
若结合lambda函数则更加简洁:
reduce(lambda x,y:x*y,range(1,6))
1.8 其他内置函数
绝对值 abs()
返回最大值最小值 max(),min()
返回长度 len()
求商取模divmod()
幂乘pow()
返回浮点值round()
判断类型type()
判断字符串是否相同 cmp()
判断类型是否相同 isinstance()
生成元组 range()
1.9 检测函数是否能被调用
callable(),返回true/false
1.10 类型转换内置函数
tuple():函数将列表转换为元组。
type() :返回类型
int()
long()
float()
complex()
hex() :用于将10进制整数转换成16进制整数。
oct() :函数将一个整数转换成8进制字符串。
Part Two:模块
模块(Module),是一个 Python 文件,以 .py 结尾,包含了 Python 对象定义和Python语句。
模块让你能够有逻辑地组织你的 Python 代码段。
1.1 模块引入 import
import module1[, module2[,... moduleN]
1.2 系统相关的信息模块: import sys
sys.argv 是一个 list,包含所有的命令行参数.
sys.stdout sys.stdin sys.stderr 分别表示标准输入输出,错误输出的文件对象.
sys.stdin.readline() 从标准输入读一行
sys.stdout.write("a") 屏幕输出a
sys.exit(exit_code) 退出程序
sys.modules 是一个dictionary,表示系统中所有可用的module
sys.platform 得到运行的操作系统环境
sys.path 是一个list,指明所有查找module,package的路径.
1.3 操作系统相关的调用和操作: import os
os.environ 一个dictionary 包含环境变量的映射关系
os.environ["HOME"] 可以得到环境变量HOME的值
os.chdir(dir) 改变当前目录
os.chdir('d:\\outlook') 注意windows下用到转义
os.getcwd() 得到当前目录
os.getegid() 得到有效组id
os.getgid() 得到组id
os.getuid() 得到用户id
os.geteuid() 得到有效用户id
os.setegid os.setegid() os.seteuid() os.setuid()
os.getgruops() 得到用户组名称列表
os.getlogin() 得到用户登录名称
os.getenv 得到环境变量
os.putenv 设置环境变量
os.umask 设置umask
os.system(cmd) 利用系统调用,运行cmd命令
1.4 内置模块(不用import就可以直接使用)常用内置函数:
help(obj) 在线帮助, obj可是任何类型
callable(obj) 查看一个obj是不是可以像函数一样调用
repr(obj) 得到obj的表示字符串,可以利用这个字符串eval重建该对象的一个拷贝
eval_r(str) 表示合法的python表达式,返回这个表达式
dir(obj) 查看obj的name space中可见的name
hasattr(obj,name) 查看一个obj的name space中是否有name
getattr(obj,name) 得到一个obj的name space中的一个name
setattr(obj,name,value) 为一个obj的name space中的一个name指向vale这个object
delattr(obj,name) 从obj的name space中删除一个name
vars(obj) 返回一个object的name space。用dictionary表示
locals() 返回一个局部name space,用dictionary表示
globals() 返回一个全局name space,用dictionary表示
type(obj) 查看一个obj的类型
isinstance(obj,cls) 查看obj是不是cls的instance
issubclass(subcls,supcls) 查看subcls是不是supcls的子类
chr(i) 把一个ASCII数值,变成字符
ord(i) 把一个字符或者unicode字符,变成ASCII数值
oct(x) 把整数x变成八进制表示的字符串
hex(x) 把整数x变成十六进制表示的字符串
str(obj) 得到obj的字符串描述
list(seq) 把一个sequence转换成一个list
tuple(seq) 把一个sequence转换成一个tuple
dict(),dict(list) 转换成一个dictionary
int(x) 转换成一个integer
long(x) 转换成一个long interger
float(x) 转换成一个浮点数
complex(x) 转换成复数
max(...) 求最大值
min(...) 求最小值
真喺睇到眼花。。。其实写咁多都喺记唔住噶啦,不过,我只要求有个印象就ok啦,以后用到再翻里check虾咪得咯嘻嘻!!