Python_13

  1. 1.
from random import choice
x=choice(['hello,world!',[1,'e','e','e']])
print x.count('e')

choice 函数从序列中随机选出元素给变量赋值,每次执行会有1或3结果。

3

  1. 2.
def add(x,y):
    return x+y

print add(1,2)
print add('Hello,','world!')

def length_message(x):
    print "The length of",repr(x),"is",len(x)

x=[1,2,3,4]
y='Hello,world'

length_message(x)
length_message(y)

程序多态性的显著体现。

  1. 3.
_metaclass_=type#确定使用新式类,不用担心,Python3.0以后旧式类不存在了

class Person:
    def setName(self,name):
        self.name=name

    def getName(self):
        return self.name

    def greet(self):
        print "Hello,world! I'm %s." %self.name

foo=Person()

foo.setName("Anna")
print foo.getName()
foo.greet()

一个简单的类的使用。

Anna
Hello,world! I’m Anna.

  1. 4.
class Class:
    def method(self):
        print 'I have a self!'

def function():
    print "I don't."


instance=Class()
instance.method()

instance.method=function

instance.method()

self参数事实上正是方法和函数的区别,方法将它们的第一个参数绑定到所属的实例上,普通函数则不会有self参数。

  1. 5.
class Scrective:
    def __No(self):
        print 'Bet you can see it'

    def Yes(self):
        print 'The secret is'
        self.__No()

One=Scrective()

Python中并没有真正的私有化支持,这里只是简单的使用’名称变化术‘来提供私有化的作用,函数前加两个下划线”__”表示私有化函数。

>>> One.Yes()
The secret is
Bet you can see it
>>> One.__No()
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
AttributeError: Scrective instance has no attribute '__No'
>>> One._Scrective__No()
Bet you can see it
  1. 6.
_metaclass_=type#确定使用新式类,不用担心,Python3.0以后旧式类不存在了

class Person:
    number=0

    def init(self):
        Person.number+=1
    def setName(self,name):
        self.name=name

    def getName(self):
        return self.name

    def getNumber(self):
        print self.number

    def greet(self):
        print "Hello,world! I'm %s." %self.name

foo1=Person()
foo2=Person()
foo1.init()
foo1.getNumber()
foo2.init()
foo2.getNumber()

这里的number是可供这个类所有成员访问的变量,用来计算类的成员数量,用init来初始化所有实例。

1
2

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值