python之day4

今天的主要内容:

Day04

一 作业

二 内置函数

三 装饰器

四 迭代器,生成器

五 递归

六 冒泡算法

 

上节课复习

 

1 python 基础

2 基本数据类型:str,dict...

  s = "alex" => str

3 函数式编程

  函数定义

  内置函数

  文件处理

4 其他:

  三元运算

  lambda表达式

 

 

li = [11,22,3,33,44]
def f1(arg):
    arg.append(55)

li = f1(li)
#f1(li)
print(li)

返回None

 

正式内容:

 

callable:是否可以被引用,函数可以引用,变量不可以

 

通过asc表对应的数字和字母。

 

 

a = chr(65)
print(a)

a1 = ord(a)
print(a1)

返回

A

65

总结:chr  65->A  ord A->65

 

随机数功能

 

AscII码 字母范围是 65-90

#随机字母的产生方法

import random
li = []
for i in range(6):
# 65<=temp<91  (65-90)
    temp = random.randint(65,91)
    c =chr(temp)
    li.append(c)
result = "".join(li)  #元素必须都是字符串
print(result)

 

在第三位和第五位规定是数字,剩下的是字母。

 

import random
li = []
for i in range(6):
    r = random.randint(0,5)         #一个随机数(0-4)
    # 65<=temp<91  (65-90)
    if r == 2 or r == 4:            #如果随机数=2或者4时
        num = random.randint(0, 10) #随即赋值给num
        li.append(str(num))        #join 元素必须都是字符串,然后加入到li里面
    else:
        temp = random.randint(65,91)
        c =chr(temp)
        li.append(c)
result = "".join(li)
print(result)

全部都是随机的验证码

 

Python执行流程:

 

compile 编译

exec 执行

 single 单行

eval 表达式 拥有返回值

 

得到64这个返回值

 

exec 就是python的格式进行执行,代码和字符串,但是没有返回值

 

s = '7+8+9'
a = exec(s)
print(a)
b = eval(s)
print(b)

返回

None

24

 

dir()

快速查看一个对象提供哪些功能

返回true 或者 false

 

div取商 和余数 出来的就是列表格式

a = divmod(99,10)
print(a)

a1,a2 = divmod(97,10)
print(a1)
print(a2)

 

对象与类的关系

 

 

 

对象是类的实例。

 

Isinstance判断对象是不是类的实例

li = [11,22,33,44]
res = isinstance(li,list)
print(res)

 返回True

 

列表字典元组 都是可迭代的对象

filter (函数,可迭代的对象)

 

li 传入到前面的函数,如果返回true,就将值添加到ret里面

如果返回False 就不添加。

 

li = [11,22,33,44,55,66]
def f1(a1):
    if a1>22:
        return True

res = filter(f1,li)
print(list(res))

li = [11,22,33,44,55,66]
res = filter(lambda a:a>33,li)
print(list(res))

返回[44, 55, 66]

 

不可变的集合(set

 

map(函数,可迭代的对象(可以进行for循环))

 

 

 

 

li = [11,22,33,44,55,66]
res = map(lambda a:a+100,li)
print(list(res))

返回 [111, 122, 133, 144, 155, 166]

 

总结:

local() 局部变量

globals()全局变量

 

Hash() 转换成hash值,用于字典key的存储

 

Python3以字符的格式查看

Python2 以字节的格式查看

 

a = '李杰'
b = bytes(a,encoding='utf-8')
r = len(b)
print(r)

a1 = '李杰'

r1 = len(a1)
print(r1)

 

posted @ 2016-05-29 13:44  Aaron.shen  阅读(152)  评论(0编辑  收藏  举报