1. Python视频
A.内置函数
# ************************************ # abs() # 绝对值 # ************************************ # all() # 所有为True,才为True # n = all([1,2,3,4,0]) # print(n) # any() # 只要有一个为True,则为True # n = any([1,2,3,4,0]) # print(n) # 0, False, None, '', [], {}, () 布尔值皆为False # ************************************ # ascii() # 自动执行对象的__repr__方式 # class Foo: # def __repr__(self): # return '444' # n = ascii(Foo()) # print(n) # ************************************ # # bin() # 十进制转二进制 # print(bin(5)) # 0b101 # # oct() # 十进制转八进制 # print(oct(9)) # 0o11 # # hex() # 十进制转十六进制 # print(hex(17)) # 0x11 # ************************************ # bytes() # 将字符串转换为字节类型 # s = '李杰' # print(bytes(s,encoding='utf8')) # b'xe6x9dx8exe6x9dxb0' # print(bytearray(s,encoding='utf8')) # bytearray(b'xe6x9dx8exe6x9dxb0') # utf-8 一个汉字是三个字节,一个字节是8位 # gbk 一个汉字是二个字节,一个字节是8位 # str() # 字节转换为字符串 # print(str(b'xe6x9dx8exe6x9dxb0',encoding='utf-8')) # 李杰 # ************************************ # callable() # def f1(): # pass # f2 = 123 # print(callable(f1)) # print(callable(f2)) # ************************************ # print(chr(65)) # print(ord('B')) # ************************************ # Random authentication code # import random # li = [] # for i in range(6): # r = random.randrange(0,5) # if r == 2 or r == 4: # num = random.randrange(0,10) # li.append(str(num)) # else: # temp = random.randrange(65, 91) # c = chr(temp) # li.append(c) # result = ''.join(li) # print(result) # ************************************ # compile() # 将字符串编译成python代码 # exec() # 执行python代码,接收:代码或字符串。没有返回值。 # eval() # 执行表达式,并获取结果。有返回值。 # s = 'print(123)' # r = compile(s, '<string>', 'exec') # print(r) # <code object <module> at 0x000001A9D8BE2930, file "<string>", line 1> # exec(s) # 123 # exec(r) # 123 # print(eval('8*8')) # 64 # ************************************ # dir() # 快速查看某对象提供的功能 # print(dir(dict)) # help() # 查看功能的详细解释 # help(dict) # ************************************ # divmod() # 返回商和余数,元组 # r = divmod(97,10) # n1, n2 = r # print(n1) # print(n2) # ************************************ # isinstance() # 判断对象是否是某类的实例 # s = 'alex' # r = isinstance(s, str) # print(r) # ************************************ # s = 'alex' # 对象,'alex' => 类,str # # 对象要执行功能时,去所在类里面去寻找 # # 对象是类的实例 # ************************************ # filter(函数,可迭代对象) # def f2(a): # if a > 22: # return True # li = [11,22,33,44,55] # ret = filter(f2,li) # 把li的每个元素拿来执行f2,若返回True,则该元素添加到ret # print(list(ret)) # lambda() 和 filter() 组合使用 # li = [11,22,33,44,55] # result = filter(lambda a: a>33, li) # print(list(result)) # lambda() 自动return # f1 = lambda a: a > 30 # ret = f1(10) # print(ret) # False # ************************************ # map(函数,可迭代对象) # li = [11,22,33,44,55] # result = map(lambda a: a+100, li) # 把li的每个元素拿来执行f2,将函数返回值添加到ret # print(list(result)) # ************************************ # globals() # 显示所有的全局变量 # locals() # 显示所有的局部变量 # NAME = 'alex' # def show(): # a = 123 # c = 123 # print(locals()) # print(globals()) # show() # ************************************ # hash() # 转换为哈希值,一般用于字典的key来保存 # s = 'hhh' # print(hash(s)) # ************************************ # id() # 查看内存地址 # s = 1 # a = id(s) # print(a) # ************************************ # len() # s = '李杰' # print(len(s)) # 在python3中是2(按字符),python2.7中是6(按字节) # b = bytes(s, encoding='utf-8') # 转换为字节方式 # print(len(b)) # ************************************ # python2 for '李杰' # python3 for '李杰' # ************************************ # max() # min() # sum() # r = sum([11,22,33,1]) # print(r) # ************************************ # pow() # r = pow(2,10) # print(r) # ************************************ # round() # 四舍五入 # ************************************ # zip() # 接受多个序列作为参数,返回一个tuple列表 # l1 = ['alex',11,22,33] # l2 = ['is',11,22] # l3 = ['sb',11,22,33] # r = zip(l1,l2,l3) # temp = list(r)[0] # print(temp) # ret = ' '.join(temp) # print(ret) # ************************************
B. 装饰器
B-1 装饰器流程剖析
# 解释器步骤: def outer(func): # 1.解释outer,不执行内部 def inner(): # 3.解释inner print('before') # 5.1 func() # 5.2 指向老的f1 print('after') # 5.4 return inner # 4.返回inner函数给f1(若inner加括号,则会先执行inner函数) # 则f1函数只想inner函数。若调用f1,则执行inner函数,示例5 # @ + 函数名 # 功能: # 1.自动执行outer函数并且将下面的函数名f1当作参数传递 # 2.将outer函数的返回值,重新赋值给f1 @outer # 2.解释,执行outer def f1(): print('F1') # 5.3
第4周作业
2. MOOC - 软件工程导论
第2周 - 计算思维起步--符号化、计算化与自动化 -> 完成
3. MOOC - 数据结构 -> C语言基础差,听不懂,暂时放下
第2周 - 线性结构
4. MOOC - 数据库技术及应用
第1周:走进数据库
*******************************************************************************
5. MOOC课表