python学习

1.基础语法 ##

  1. 命令行输入字符串并转化为整数
    year = int(raw_input('year:\n'))
  2. 类的继承
class Parent:
    a=3
    b='hello'
    def __init__(self, a=3, b='hello'): #构造函数
        self.a=a
        self.b=b
    def __del__(self): #析构函数

class Child(Parent):
    __c='hello word' #私有变量

自带特殊函数,向对象中添加或者删除属性
getattr(obj, name[, default]) : 访问对象的属性。
hasattr(obj,name) : 检查是否存在一个属性。
setattr(obj,name,value) : 设置一个属性。如果属性不存在,会创建一个新属性。
delattr(obj, name) : 删除属性。

issubclass() - 布尔函数判断一个类是另一个类的子类或者子孙类,语法:issubclass(sub,sup)
isinstance(obj, Class) 布尔函数如果obj是Class类的实例对象或者是一个Class子类的实例对象则返回true。
  1. 可以一条语句或者函数返回多个值
def fib(n):
    a,b = 1,1
    for i in range(n-1):
        a,b = b,a+b
    return a

# 输出了第10个斐波那契数列
print fib(10)

4.列表元素的append向其中添加元素

def fib(n):
    if n == 1:
        return [1]
    if n == 2:
        return [1, 1]
    fibs = [1, 1]
    for i in range(2, n):
        fibs.append(fibs[-1] + fibs[-2])
    return fibs
  1. 列表切片
a = [1, 2, 3]
b = a[:]

6.遍历dict

myD = {1: 'a', 2: 'b'}
for key, value in dict.items(myD):
    print key, value
  1. 判断
score = int(raw_input('input score:\n'))
if score >= 90:
    grade = 'A'
elif score >= 60:
    grade = 'B'
else:
    grade = 'C'

8.迭代器

class Fibs:
    def __init__(self):
        self.a = 0
        self.b = 1
    def next(self):
        self.a , self.b = self.b , self.a + self.b
        return self.a
    def __iter__(self):
        return self

for f in fibs:
      if  f  > 1000:
          print f
          break 

9 生成器yield:相当于将元素按照list组合

def flatten(nested):
    for sublist in nested:
        for element in sublist:
            yield element

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值