zhuzhezhe
6/6/2017 - 1:00 PM

python语法

python语法

# 导入模块
from Student import slogal
import Student.slogal

'''面向对象'''
# 类可以多重继承
class Student(School, People):

    # __slots__限制对象添加其他属性
    __slots__ = ('name', 'age', 'sex')
    def __init__(self, name, age, sex):
        # 为属性加上_表示私有
        self._name = name
        self._age = age
        slef._sex = sex

    def get_name(self):
        return self.name
    def set_name(self, name):
        self._name = name

    def slogal(self):
        return "Good good study and day day up."

'''函数式编程'''
# 函数的参数包括位置参数,默认参数,可变参数,关键字参数,命名关键字参数
# 默认参数指定参数默认值,可变参数可传入多个列表元素,关键字参数可传入多个字典元素
def eat(name, age=12, *args, **kwargs):
    for i in args:
        print i
    # 函数可返回多个值
    return name, age

# 函数的参数可以为函数,函数中可以包含函数,函数可以返回函数
def play(func):
    def read():
        pass
    return read

# 匿名函数lambda
a = lambda x: x*2
# 将会输出10
print(a(5))

# 装饰器
# 使hello函数拥有route的功能
@app.route('/')
def hello():
    pass

# 生成器Genertors
# 只定义一个函数并不占内存,只有在调用(迭代)时才执行
def cals():
    for i in range(10):
        # yield标志,只有在调用(迭代)函数时展示计算结果
        yield i

'''一些小特性'''
# for...in...
# while
# try...except...finally...
def base():
    for i, j in random(range(10)):
        while i>3:
            try:
                z = i/j
            except someerror as e:
                print errorinfo
            finally:
                print z
    # list生成式
    a = [x for x in list if x>4]
    # 列表切片
    b = a[1:3]
    # 三元运算符
    sex_boy = True
    # 如果性别为男则为"boy"否则为"girl"
    "boy" if sex_boy else "girl"