# 计算时间差 import time start_time = time.mktime(time.strptime('2017-09-11 08:30:00','%Y-%m-%d %H:%M:%S')) end_time = time.mktime(time.strptime('2018-07-30 08:30:00','%Y-%m-%d %H:%M:%S')) dif_time = end_time - start_time dif_time = time.gmtime(dif_time)…
1. 判断下列逻辑语句的True,False.(1) 1 > 1 or 3 < 4 or 4 > 5 and 2 > 1 and 9 > 8 or 7 < 6True(2) not 2 > 1 and 3 < 4 or 4 > 5 and 2 > 1 and 9 > 8 or 7 < 6False 2. 求出下列逻辑语句的值.(1) 8 or 3 and 46 or 2 and 0 or 9 and 78(2) 0 or 2 and…
一. collections模块 在内置数据类型(dict.list.set.tuple)的基础上,collections模块还提供了几个额外的数据类型:namedtuple.deque.Counter.OrderedDict和defaultdict等. 1.namedtuple: 生成可以使用名字来访问元素内容的tuple 2.deque: 双端队列,可以快速的从另外一侧追加和推出对象 3.Counter: 计数器,主要用来计数 4.OrderedDict: 有序字典 5.defaultdic…
一. 选择题(32分) 1. python不支持的数据类型有:AA. charB. intC. floatD. list 2. Ex = ‘foo’y = 2print(x + y)A. fooB. foofooC. foo2D. 2E. An exception is thrown 3. 关于字符串下列说法错误的是 BA. 字符应该视为长度为1的字符串B. 字符串以\0标志字符串的结束C. 既可以用单引号,也可以用双引号创建字符串D. 在三引号字符串中可以包含换行回车等特殊字符4. 以下不能创…
一.关系运算 有如下两个集合,pythons是报名python课程的学员名字集合,linuxs是报名linux课程的学员名字集合pythons={'alex','egon','yuanhao','wupeiqi','gangdan','biubiu'}linuxs={'wupeiqi','oldboy','gangdan'}1. 求出即报名python又报名linux课程的学员名字集合 print(pythons & linuxs)2. 求出所有报名的学生名字集合 print(pythons |…
1. 请利用filter()过滤出1~100中平方根是整数的数,即结果应该是: [1, 4, 9, 16, 25, 36, 49, 64, 81, 100] import math def func(x): return math.sqrt(x) % 1 == 0 ret = filter(func,range(0,101)) for i in ret: print(i) 2. 列表按照其中每一个值的绝对值排序 li = [1,-2,3,-48,78,9]print(sorted(li,key…
1.使用while循环输入 1 2 3 4 5 6     8 9 10 count = 0 while count <= 9: count += 1 if count == 7:continue print(count) 老师讲解: # 把7换成空格 count = 0 while count < 10: count += 1 if count == 7: print(' ') else: print(count) # 不输入空格 count = 0 while count < 10:…
看代码写结果:1. a=[1,2,3,6,"dfs",100]s=a[-1:]print (s) 结果:[100] 2. s=a[-1:0:-1]print(s) 结果:[100, “dfs”, 6, 3, 2] 1. 写代码,有如下列表,按照要求实现每一个功能li = ["alex","wusir","eric","rain","alex"](1)计算列表的长度并输出li = [&qu…
1. 有变量name = "aleX leNb" 完成如下操作:(1) 移除 name 变量对应的值两边的空格,并输出处理结果name = ' aleX leNb 'print(name.strip()) (2) 移除name变量左边的’al’并输出处理结果name = 'aleX leNb'print(name.lstrip('al')) (3) 移除name变量右面的’Nb’,并输出处理结果name = 'aleX leNb'print(name.rstrip('Nb')) (4)…
0. 默写a. 生成器函数获取移动平均值例子: def init(func): def inner(*args,**kwargs): ret = func(*args,**kwargs) ret.__next__() return ret return inner @init def average(): average = 0 count = 0 sum = 0 while 1: num = yield average sum += num count += 1 average = sum/c…
1. 编写函数.(函数执行的时间是随机的) import timeimport randomdef random_time(): ''' 执行时间随机的函数 :return: ''' time.sleep(random.randrange(1,5)) # 执行时间在1-4秒之间随机 print('This is random_time')random_time() 2. 编写装饰器,为函数加上统计时间的功能 import timedef timmer(func): ''' 统计函数运行时间 :p…
1. 文件a.txt内容:每一行内容分别为商品名字,价钱,个数,求出本次购物花费的总钱数apple 10 3tesla 100000 1mac 3000 2lenovo 30000 3chicken 10 3 sum = 0 with open('a.txt',mode='w',encoding='utf-8') as f: f.write('''apple 10 3 tasla 100000 1 mac 3000 2 lenove 30000 3 chicken 10 3''') with o…
1. 写函数,检查获取传入列表或元组对象的所有奇数位索引对应的元素,并将其作为新列表返回给调用者. 答: l1 = [] def odd(li): for i in range(1,len(li),2): l1.append(li[i]) return l1 rec = [',123,456] odd(rec) print(l1) 结果: [', 456] 2. 写函数,判断用户传入的对象(字符串.列表.元组)长度是否大于5. 答: def length(s): if len(s) > 5: r…
1,有如下变量(tu是个元组),请实现要求的功能. tu = ("alex", [11, 22, {"k1": 'v1', "k2": ["age", "name"], "k3": (11,22,33)}, 44]) (1). 讲述元祖的特性 相当于只读列表,只可以查询,不能修改元组的元素.若元组里面包含列表,则这个列表可以变. (2). 请问tu变量中的第一个元素 “alex” 是否可…
1. 三级菜单的代码看一遍 2. 斐波那契数列用递归实现:问第n个斐波那契数是多少 def fbnq(n): if n == 0 or n == 1: return 1 else: return fbnq(n-1)+fbnq(n-2) print(fbnq(15)) 结果: 987 3. 阶乘用递归实现 def j(n): if n == 1: return n else: return n*j(n-1) print(j(4)) 结果: 24 4. 考试附加题用递归实现…
1. 写一个求正方形周长和面积的类 class Square: def __init__(self, length): self.length = length def area(self): return '边长为{}的正方形的面积为:{}'.format(self.length, self.length**2) def perimeter(self): return '边长为{}的正方形的周长为:{}'.format(self.length, self.length * 4) z1 = Sq…
一. 反射 ''' # isinstance class A:pass class B(A):pass a = A() print(isinstance(a,A)) # 判断对象和类的关系 print(issubclass(B,A)) # 判断子类和父类的关系 print(issubclass(A,B)) ''' #--------------------------------------------------------------------------------# # # 反射:是用…
一. 类和对象命名空间类里 可以定义两种属性: 1. 静态属性 2. 动态属性 class Course: language = 'Chinese' def __init__(self, teacher, course_name, period, price): self.teacher = teacher # 授课老师 self.name = course_name # 课程名字 self.period = period # 课程周期 self.price = price # 课程价格 def…
day 6python基础数据类型考试题 考试时间:两个半小时 满分100分(80分以上包含80分及格) 一,基础题. 1. 简述变量命名规范(3分) 答:(1) 变量为数字,字母以及下划线的任意组合,且不能以数字开头 (2) 变量名不宜过长,要具有可描述性 (3) 变量名不能为中文和汉字拼音 (4) 默认全大写的为常量 (5) 不能为Python的关键字 2. 字节和位的关系.(2分) 答:1个字节 == 8位 3. ’太白’使用utf-8编码时,占的位数和字节数,是多少?使用gbk编码时,占…
一. 递归函数 如果一个函数在内部调用自身本身,这个函数就是递归函数. 最大递归深度默认是997 -- python从内存角度出发做得限制(而不是程序真的报错),最大深度可以修改 def func(n): print(n) func(n+1) func(1) 查看最大递归深度 ‘’‘ 改变最大递归深度,根据自身电脑配置,深度各不相同 ’‘’ import sys sys.setrecursionlimit(1000000) 修改最大递归深度 举个例子: 现在你们问我,alex老师多大了?我说我不…
三. MySQL视图(不常用) 给某个查询语句设置个别名(视图名),日后方便使用 - 创建: create view 视图名 as SQL; PS:视图是虚拟的 - 修改: alter view 视图名 as SQL; - 删除 drop view 视图名; create view v1 as select * from student where sid>10; select * from v1; student表增加数据,v1视图也会随着增加,不能在v1里面增加数据 四. 触发器(不推荐使用…
def qqxing(l = []): # 可变数据类型 l.append(1) print(l)qqxing() # [1]qqxing([]) # [1]qqxing() # [1, 1]qqxing() # [1, 1, 1] # 如果默认参数的值是一个可变数据类型,那么每一次调用函数的时候,如果不传值,就公用这个数据类型的资源 def qqxing(l = {}): # 可变数据类型 l['k'] = 'v' print(l)qqxing() # {'k': 'v'}qqxing({})…
# 文件处理# 打开文件# open('路径','打开方式', '指定编码方式')# 打开方式:r w a 可读可写:r+ 可写可读:w+ 可追加可读:a+ b# r+ :打开文件直接写,和读完再写 不一样# 编码方式:一般情况下用 utf-8 # 操作文件 # 读# read:一次性读# readlines:一次性读# readline: 一行一行读 # 不知道在哪里结束 # 视频 图片 rb 打开 bytes类型 按照字节读(不按行读,没有行的概念) # for循环 --> 最好的方法 #…
基础数据类型汇总 1. str 2. int 3. list 4. bool 5. dict (1) fromkeys Python 字典 fromkeys() 方法用于创建一个新的字典,并以可迭代对象中的元素分别作为字典中的键,且所有键对应同一个值,默认为None. 6. tuple 元组里面如果只有一个元素且不加逗号,则类型和该元素一样 7.set (1) 集合是无序的,不重复的数据集合,它里面的元素是可哈希的(不可变类型),但是集合本身是不可哈希(所以集合做不了字典的键)的.以下是集合最重…
1. Python2与Python3的区别: Python2:源码不标准,混乱,重复代码太多: Python3:统一标准,去除重复代码. 编码方式: python2的默认编码方式为ASCII码:python3的默认编码方式为utf-8(解决方式:在文件的首行输入:# -*- encoding:utf-8 -*-) print函数: Python3中print为一个函数,必须用括号括起来:Python2中print为class input(): Python3中用input,Python2中用ro…
复习: 1. MySQL:文件管理的软件 2. 三部分: - 服务端 - SQL语句 - 客户端 3. 客户端: - MySQL - navicat 4. 授权操作: - 用户操作 - 授权操作 5. SQL语句 - 数据库操作 - 创建数据库要指定字符编码: create database xx default charset=utf8; - 删除数据库: drop database xx; - 数据表操作 - 列 - 数字 整数 小数 - 字符串 - 时间 datatime - 二进制 -…
一. 复习1. MySQL: - 服务端 - 客户端2. 通信交流 - 授权 - SQL语句 - 数据库 创建数据库: create database db1 default charset utf8; 删除数据库: drop database db1; - 数据表 创建数据表: create table tb1( id int not null auto_increment primary key, name char(10), depatment_id int, constraint fk_…
# 迭代器和生成器# 迭代器 # 双下方法:很少直接调用的方法,一般情况下,是通过其他语法触发的# 可迭代的 --> 可迭代协议:含有__iter__的方法( '__iter__' in dir(数据) )# 可迭代的一定可以被for循环# 迭代器协议:含有__iter__.__next__的方法# 迭代器一定可迭代,可迭代的通过调用iter()方法就能得到一个迭代器# 迭代器的特点: # 很方便使用,且只能取所有的数据取一次 # 节省内存空间 # 生成器# 生成器的本质就是迭代器# 生成器的表…
'''数据类型:intbool... 数据结构:dict (python独有的)listtuple (pytho独有的)setstr''' # reverse() 反转l = [1,2,3,4,5]l.reverse()print(l) # reversed() 反转,但它的反转不改变原来的列表且返回一个反序的迭代器l = [1,2,3,4,5]l2 = reversed(l)print(l2) # <list_reverseiterator object at 0x000001DF4CC309…
# 作用域相关(2)locals() # 返回本地作用域中的所有名字 globals() # 返回全局作用域中的所有名字 # 迭代器/生成器相关(3)range()print('__next__' in dir(range(10))) # False --> 可迭代的,但不是迭代器print('__next__' in dir(iter(range(10)))) # True --> iter()转换之后,就成为迭代器了 # next(迭代器) # 迭代器.__next__() == next…