python速查笔记(1) 类型与函数
来源:互联网 发布:图书管理系统c语言 编辑:程序博客网 时间:2024/04/29 12:27
学习python有些日子了,有些东西和C++、java的确有很大差别,于是将些概要的东西整理出来,便于查询。而不求其详细。
先从变量和函数说起,逐步整理完善。
“一切皆对象”是python的一个原则。任何类型、变量、函数、模块都是对象。
一、基本类型
1.整型(Integer):
2.浮点型(float): (1==1.0)是真值
3.复数(complex): c=1+5j == c1=complex(1,5)是真值
4.None类型: 表示出错
5.逻辑表达式:
逻辑运算符:(级别低于比较运算符)
A and B #与。A为假,就返回表达式A的值。A为真,就返回表达式B的值。
A or B #或。A、B的表达式都为真,结果是A;
#如果是一真一假,返回真值表达式的值;
#都是假(空值和0的情况),结果是B(的0或空值)。
not #非。not a == b 就是 not (a == b),
比较运算符:
x == y #x等于y
x != y #x不等于y
x > y #x大于y
x < y #x小于y
x >= y #x大于等于y
x <= y #x小于等于y
and-or技巧(实现c语言的bool ? a:b)
>>> a = ""
>>> b = "second"
>>> bool = 1
>>> (bool and [a] or [b])[0] #注意[]的用意在于保证a的表达式为TRUE,不影响运算结果
二、函数
1.函数定义
def function_name(
#代码块要缩进
return ... #函数没有返回值类型定义,return可返回任意类型,或无返回值
#函数可以嵌套函数
2.函数的参数传递
函数参数不需定义类型,若类型不匹配,函数代码可抛异常。
函数参数是按地址引用传递的。但由于local namespace的原因,好像对简单变量是按值传递的。
缺省值参数(可选参数):
def SetPosition(name,height=170,weight=70):
>>>SetPosition("my cup")
可变数量参数:(想想c语言中的main(int argc, char *argv[]),printf())
按tuple方式传递多个参数(任意参数):
def printf(format,*arg): #*arg必须为最后一个参数。
#*表示接受任意个参数,并将其之后的变量生成tuple传递给函数
>>>printf("hello", "my",2,["dog","pig"])
按dictionary方式传递多个参数(任意带名字参数):
def printf(format,**keyword): #**表示接收任意个key,value式的参数,生成字典传给函数
>>>printf("dict format", One=1,Two=2,Three=3)
#本例keys是["One","Two","Three"],values是[1,2,3]
几种混合时,先后排序为:
固定参数,缺省值参数,*arg,**keyword。
3.函数的属性
函数也是对象,函数名可以象普通变量一样给其他变量赋值(C语言的函数指针的意味)
__doc__属性,#函数定义的第一个表达式是str的话,就是其__doc__,可作帮助提示。
4.函数的作用域
遵循LGB原则(调用优先级为local,global,builtin)
5.lambda函数
函数式编程语言中很基础的东西,可看为一行的匿名函数。
>>>f = lambda a,b: a+b #等价于 def f(a,b): return a+b
6.python的一些内置函数(只列关于对象属性的,类型转换等其他的没列出)
type() #显示值和变量的类型。
id() #以值或变量为参数,返回值是一整数,它表示值或变量的唯一标识符。该值与内存地址相关。
dir() #显示包括类,对象实例,文件,列表,复数等等类型的属性和方法。
#需要该对象有__dict__,__members__和__methods__属性
hasattr() #函数测试一个对象是否有特定的属性。
getattr() #取回某个对象属性的值。
setattr() #为某个对象添加新的属性和值。
delattr() #删除对象的某个属性。
isinstance()#测试一个对象是否为另一个类的实例。
issubclass()#测试一个类是否为另一个类的子类。
- python速查笔记(1) 类型与函数
- Python速查笔记(2) 内置类型
- Python速查笔记(3) 面向对象与异常处理
- Python学习笔记-1(变量、类型、函数、类、作用域)
- [python]学习笔记5-函数参数类型
- Python对象类型判断与函数重载
- python 笔记1--基础类型
- Python语法易忘&速查笔记
- 【python】完全自学笔记(速查手册)
- Python函数之可变类型与不可变类型
- Oracle速查语法:数据类型,函数,异常类型,常用命令
- C++学习笔记:转换构造函数与类型转换函数
- python-基础笔记3-函数的参数类型
- Python笔记3:模块与函数
- Python学习笔记:函数与类
- Python学习笔记1--运行Python&&python对象类型介绍
- python:1:数字类型相关函数
- Python函数参数类型
- 一个不错的网站
- 学习和研究的态度
- 一个叫“胡万进”的软件缺陷〔转贴〕
- 关于“使用xmlspy编写xsl文件时候,在xsl解释xml文件的时候总是使用utf-16编码”的解决办法
- 利用Observer模式解决组件间通信问题
- python速查笔记(1) 类型与函数
- 【转贴】在BCB中实现类C#属性声明语法
- unix并发技术的学习及在扫描器上的应用一
- unix并发技术的学习及在扫描器上的应用二
- Python速查笔记(2) 内置类型
- linux c 编程之前言
- linux c 编程之一 passwd文档用户分离
- linux c 编程之二 列出ip段.
- linux c 编程之三 80banner 扫描器