概述
?http://q.datayes.com
?
“谁来给我讲讲Python?”?
第一天学习了Python的基本操作,以及几种主要的容器类型,今天学习python的函数、循环和条件、类,这样才算对Python有一个大致的了解。今天的学习大纲如下:
三、函数
1、定义函数
四、循环与条件
1、if语句
2、while true/break语句
3、for语句
4、列表推导式
五、类
1、闲说类与对象
2、定义一个类
三,函数?
1、定义函数
(1)定义规则
介绍列表方法的时候已经大概说过函数,学过数学的人都知道函数,给一个参数返回一个值。函数也可以自己定义。用如下的格式:
def 函数名(参数): 输入函数代码
函数代码中,return表示返回的值。比如定义一个平方函数square(x),输入参数x,返回x的平方:
In?[14]:
def square(x):return x*xsquare(9)
Out[14]:
81
?
(2)定义变参数函数
有时需要定义参数个数可变的函数,有几个方法可以做到:
给参数指定默认值
比如,定义参数f(a,b=1,c=’hehe’),那么在调用的时候,后面两个参数可以定义也可以不定义,不定义的话默认为b=1,c=’hehe’,因此如下调用都可以:
F(‘dsds’);
F(‘dsds’,2);
F(‘dsds’,2,’hdasda’);
参数关键字
上面的方法等于固定了参数的位置,第一个值就是第一个参数的赋值。而“参数关键字”方法,其实是固定了参数关键字,比如仍然定义参数 f(a,b=1,c=’hehe’),调用的时候可以用关键字来固定:
F(b=2,a=11)
位置可以动,只要参数关键指出来就可以了。
四、循环与条件?
注意Python是用缩进来标识出哪一段属于本循环。
1、if语句
也是注意一是缩进,二是条件后面有冒号:
In?[15]:
j=2.67if j3: print 'j3'
?
j3
?
对于多条件,注意的是elseif要写成elif,标准格式为:
if 条件1:
执行语句1
elif 条件2:
执行语句2
else:
执行语句3
注意if…elif…else三个是并列的,不能有缩进:
In?[16]:
t=3if t3: print 't3'elif t==3: print 't=3'else: print 't3'
?
t=3
?
2、while true/break语句
该语句的格式为
while true即条件为真:
执行语句 if中断语句条件 : break
看个例子:
In?[17]:
a=3while a10: a=a+1 print a if a==8: break
?
45678
?
虽然while后面的条件是a10,即a小于10的时候一直执行,但是if条件中规定了a为8时就break掉,因此,输出只能输到8。
3、for语句
不多说了,可以遍历一个序列/字典等。
In?[18]:
a=[1,2,3,4,5]for i in a: print i
?
12345
?
5、列表推导式:轻量级循环
列表推导式,是利用其它列表来创建一个新列表的方法,工作方式类似于for循环,格式为:
[输出值 for 条件]
当满足条件时,输出一个值,最终形成一个列表:
In?[19]:
[x*x for x in range(10)]
Out[19]:
[0, 1, 4, 9, 16, 25, 36, 49, 64, 81]
In?[20]:
[x*x for x in range(10) if x%3==0]
Out[20]:
[0, 9, 36, 81]
?
如上的例子就是利用序列[0,1,2,3,4,5,6,7,8,9],生成了一个新的序列。
六、类?
作为第二天的Python学习,先对类有一个大致的印象吧。
1、闲说类与对象 类是一个抽象的概念,它不存在于现实中的时间/空间里,类只是为所有的对象定义了抽象的属性与行为。就好像“Person(人)”这个类,它虽然可以包含很多个体,但它本身不存在于现实世界上。
而对象,是类的一个具体。它是一个实实在在存在的东西。如果上面说的“人”是一个抽象的类,那么你自己,就是这个类里一个具体的对象。
一个类的对象,也叫一个类的实例。再打个比方,类好比一个模具,对象就是用这个模具造出来的具有相同属性和方法的具体事物,俗话说:“他俩真像,好像一个模子刻出来的”,就是指的这个意思。 那么用这个模具造一个具体事物,就叫类的实例化。下面看一个具体的类:
2、定义一个类
In?[21]:
class boy: gender='male' interest='girl' def say(self): return 'i am a boy'
?
上面的语句定义了一个类boy,我们来根据这儿类的模型构造一个具体的对象:
In?[22]:
peter=boy()
?
现在来看看peter这个具体的实例有哪些属性和方法。
“什么叫属性和方法?”
它们都是“类”的两种表现,静态的叫属性,动态的叫方法。比如“人”类的属性有姓名、性别、身高、年龄、体重等等,“人”类的方法有走、跑、跳等等。
In?[23]:
peter.gender
Out[23]:
'male'
In?[24]:
peter.interest
Out[24]:
'girl'
In?[25]:
peter.say()
Out[25]:
'i am a boy'
?
这里gender和interest是peter的属性,而say是他的方法。如果再实例化另一个对象比如sam:
In?[26]:
sam=boy()
?
那么sam和peter有一样的属性和方法,可以说,“他们真是一个模子刻出来的!”
http://q.datayes.com
最后
以上就是阳光面包为你收集整理的python量化分析前景_量化分析师的Python日记【第2天:再接着介绍一下的全部内容,希望文章能够帮你解决python量化分析前景_量化分析师的Python日记【第2天:再接着介绍一下所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复