python学习[2]

python为什么代码量少?

高级数据结构使你可以在一个单独语句中表达出很复杂的操作。

语句的组织依赖于缩进而不是begin/end块。
不需要申明变量或参数。
python的解释器是C语言写的,那么,python是可以集成进由C写的程序中的。
python跟bash一样可以作为脚本来调用:
#! /usr/bin/env python
$ chmod +x myscript.py
一切因为它有解释器。


一、python的函数
>>> def square(x):
'cal the square of the number'
return x*x
>>> square.__doc__
'cal the square of the number'
>>> help(square)
Help on function square in module __main__:


square(x)
    cal the square of the number


>>> 
C语言的函数形参都是位置参数,即位置很重要。
python有关键字参数,就是说函数形参的名称很重要,是传值的依据。
参数可以带默认值,可以传全部或部分参数。
收集参数(一个*是收集位置参数,**是收集关键字参数)
>>> def pp(*var):
print var


>>> pp('test')
('test',)
>>> pp(1,2,3)
(1, 2, 3) //返回元组(tuple) or list(列表)
>>> pp()
()
>>> 


>>> def pp(*var):
print (var)



>>> pp('test')
('test',)
>>> pp(1,2,3)
(1, 2, 3)
>>> pp()
()


>>> def pp2(**var):
print (var)
>>> pp2(x=1,y=2,z=3)
{'x': 1, 'y': 2, 'z': 3} //返回字典dict。
这就是说,函数通过收集参数转化为list和字典dict。
>>> pp2(x=1,y=2,z=3)
{'x': 1, 'y': 2, 'z': 3}


反转操作:直接向函数传list参数进去:
>>> def add(x,y):
return x+y
>>> param=(1,2)
>>> add(*param)
3
>>> 
直接向函数传dict参数进去:
>>> def hello_3(greeting='hello',name='world'):
print ('%s,%s' % (greeting,name))
>>> hello_3()
hello,world
>>> hello_3(name='Tan')
hello,Tan
>>> param={'name':'Tan','greeting':'Well met'}
>>> hello_3(**param)
Well met,Tan
>>>  


面向对象(object)的学习,作为一门高级的强大的语言,
python必须是支持面向对象编程。
多态,就是同样的一个方法,表现为多种形态:
1、比如多个不同对象,如多种商品,但都支持getPrice()方法。
2、同样是+号,可以支持1+2,也可以支持"hello"+"world"
self指针,指向对象本身,有点象C++ 的this指针。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

草根大哥

进军大神程序员路上,谢谢支持!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值