试卷 答案
# a = 0 #定义一个初始值
# for i in range(100,300): #循环一个范围100到300的数
# print(i) #打印出结果
# if i%3 ==0 and i%7== 0: #判断是否能把3 和 7整除
# a += i #将初始值每次加一
# print(a) #打印结果
# def func(s): #定义函数
# shuzi = 0 #定义参数
# daxie = 0
# xiaoxie = 0
# for i in s: #循环所有的元素
# if i.isdigit(): #判断是不是数字
# shuzi += 1
# elif i.islower(): #否则判断是否是小写字母
# daxie += 1
# else: #否则
# i.isupper() #判断是否大写
# xiaoxie += 1
# return shuzi,daxie,xiaoxie #将所有的返回一个值
# a = func('zzsSDf32') #执行所有的元素值
# print(a) #并打印结果
# l1 = [11,22,33]
# l2 = [22,33,44]
# ss = list(set(l1).intersection(set(l2))) #将列表里相同的值更新到一个新列表
# print(ss)
# s = '老男人'
# a = (bytes(s,encoding='utf-8')) 将字符串转换为字节
# print(a) #将字符串转换为字节
# print(abs(23)) #绝对值
#浅拷贝,只拷贝第一层数据, 深拷贝除了最内层全部拷贝
# print(bool('')) 所有为假的值
# print(bool([]))
# print(bool({}))
# print(bool(0))
# print(bool(None))
# all() 当所有的元素都为真才为真,有一个是假则为假
# any() 只有一个真则为真,
# print(bin(12)) #二进制
# print(oct(12)) #八进制
# print(hex(12)) #十六进制
# li =[1,2,3]
# print(help(li)) #显示所有变量或类的介绍
# print(dir(li)) #查看变量或者类型,可以使用的函数,属性,如果是类必须用引号
# print(type(li)) #查看类型
# print(id(li)) # 查看id地址
# name = 'xin' if 1 == 1 else 'kai'
# print(name) #三元运算的表达式
# name = 'xin' if 1 != 1 else 'kai'
# print(name)
# func = lambda a:a+100 #lamda表达式
# xin =func(82)
# print(xin)
# l1 = ['alex',22,33,44,55]
# l2 = ['is',22,33,44,55]
# l3 = ['good',22,33,44,55]
# l4 = ['guy',22,33,44,55]
# l5 = zip(l1,l2,l3,l4)
# for i in l5:
# # print(i)
# # print(i,type)
# print('_'.join(i))
# break #zip实现元祖转换字符串功能
# r,rb 都是只读模式, r 通过python内部转换字节类型
#rb二进制的读自己操作自己转换为字节
# with 未避免打开文件后忘记关闭,可以通过管理上下文
#函数的默认返回值是None
# 普通参数分为形参实参 (必须按照顺序执行)
# 指定参数 要给参数指定值可以不按照顺序执行
# 默认参数 必须放在参数的尾部
# 动态参数 加*就是动态参数可以传入多个参数
# s ='bala %.2f bala ' % 7.88123
# print(s) #通过字符串格式化输出仅保留两位小数点
# tpl1 = 'i am {name},age{age},really{name}'.format(name='seven',age=18)
# tpl2 = 'i am {0},age{1}'.format(*['seven',18])
# print(tpl1) #改正后的字符串格式化
# print(tpl2)
# python 有两种导入模式
# form xxxx import xxxx
# import xxx
# print(divmod(192,10)) #结果为 19页,余2行
# 函数传参数时,传的是引用
# python2 中的range 返回的是一个列表
# python3 中的range 返回的是一个迭代值
# sys.path 返回搜索的路径
# sys.argv 命令行的参数列表,第一个是程序的本身路径
# import os
# t = os.path.dirname(__file__)
# print(t) #获取上一目录的路径
# import os
# a = '/Usere/seven'
# b = 'lib'
# c = 'bin'
# d = os.path.join(a,b,c) #将三个路径拼接起来
# print(d)
#随机字母的思路
# 首先导入随机模块,
# 定义一个空字符串
# 生成一个随机数字。
# 循环一个几位的随机次数
# 判断 到某一位的时候生成0-9的随机数
# 将拿到的数字传唤为字母添加到字符串中
# 否则在根据模块提供的功能生成65-90的随机数
# 数字传唤为字母用
# chr(数字)数字传唤字母
# 将字母跟数字拼接起来
# 输出
#re.matoch 只匹配开头
#re.search 浏览全部的字符串,匹配第一个符合规则的字符串
#re.findall 可以匹配字符串中所有的字符串以列表的形式返回
#正则分组是为了调用group的功能可以优先被返回得到想要的结果
# import re
# origin = 'hello/bin/uuu/haa/d'
# result = re.findall(r'(\w+)',origin)
# print(result) #匹配任何单词的字符 一次或多次
# i = 0
# a = 1 #循环1--100的和 判断奇数还是偶数 奇数就乘 偶数就加
# for a in range(1,101):
# if a % 2 == 1:
# i *= a
# else:
# i += a
# a += 1
# print(i)
# json,用于字符串 和 python数据类型间进行转换
# pickle,用于python特有的类型 和 python的数据类型间进行转换
#loads 将字符串转换为基本的数据类型
#load 将字符串转换为字典读取文件里的内容
#dumps 将python基本数据类型 转换为字符串
#dump 将字符串转换为字典强字典写入文件
import json
#l1 = ['alex',123,'eric']
# a = json.loads(l1)
# print(a) #json对象必须是字符串不是列表
# b = json.dumps(l1)
# print(b) #正确
# l2 = ['alex',123,'eric']
# a = json.loads(l2)
# b = json.dumps(l2)
# print(b) #正确
# print(a) #json对象必须是字符串不是列表
# s1 = """['alex',123,'eric']"""
# a = json.loads(s1) #错误
# print(a)
# b = json.dumps(s1)
# print(b) #正确
# s2 = """['alex',123,'eric']"""
# a = json.loads(s2)
# print(a) #错误
# b = json.dumps(s2)
# print(b) #正确
# http 请求时,其本质返回的永远都一个字符串类型
# import re
# s = '1193884038@qq.com'
# z = re.findall('\d+.\W.\w.com',s)
# print(s) #匹配邮箱正则表达式
# li = [13,22,6,99,11]
# for j in range(len(li)):
# for i in range(len(li)-1):
# if li[i] > li[i+1]:
# temp = li[i]
# li[i] = li[i+1]
# li[i+1] =temp
# print(li) #冒泡排序
# 不同的类里有不同的对象相对应的功能
# a = 'oldboy%'
# print(a) #打印字符串的内容
# b = 'oldboy%d%%'%(12,)
# print(b) 没整明白
# def func(a1):
# return a1 + 100
# func = lambda a1:a1+200
# ret = func(10)
# print(ret) #执行结果210
# def f1(arg):
# print(arg + 100)
# def f2(arg):
# tet = f1(arg + 1)
# print(arg)
# print(tet)
# tet = f2(7)
# print(tet)
#执行结果108
# 7
# None
# None
# def f1(arg):
# print(id(arg))
# n = 111111
# print(id(n))
# f1(n) #id地址都一样
# def func(arg):
# arg.append(55)
#
# li = [11,22,33,44]
# li = func(li)
# print(li) #结果为None
# NAMELIST = ['alex','eric']
# def func():
# NAMELIST = 123
# func()
# print(NAMELIST) # 执行结果为 ['alex', 'eric']
# NAMELIST = ['alex','eric']
# def func():
# global NAMELIST
# NAMELIST = 123
# func()
# print(NAMELIST) #执行结果123
# NAMELIST = ['alex','eric']
# def func():
# NAMELIST.append('seven')
# func()
# print(NAMELIST) #追家成功['alex', 'eric', 'seven']
# r1 = eval('1+10*10')
# r2 = exec('1+10*10')
# print(r1,r2) #执行结果 r1 = 101 r2 = None
# import re
# r = re.match('\d+','123abc').group()
# print(r) #执行结果123 \d 匹配数字
# 装饰器, 重新赋值的函数内没有设置参数
# 返回值 不要扩号
# @函数也不要括号
# l1 = [11,22,33,44,55]
# def func(x):
# if x > 33:
# return True
# else:
# return False
# n = filter(func,l1)
# print(list(n)) #获取大于33的元素
# l1 = [11,22,33,44,55]
# def func(x):
# return x < 33
# s = filter(func,l1)
# print(list(s)) #获取小余的元素
# l1 =
# def func(x):
# if x % 2 == 1:
# return x +100
# else:
# return x
# l2 = map(func,l1)
# for i in l2: #将所有的奇数加100
# print(i)
# l1 = [11,22,33,44,55]
# l2 = map(lambda x:x+100 if x % 2 == 0 else x,l1)
# for i in l2: # 将所有的偶数的元素加100
# print(i)
# for i in range(1,10): #for循环实现9*9乘法表
# print(i)
# for j in range(1,i+1):
# print('%d*%d=%d'%(i,j,i*j)) #使用占位符
# 阶乘算法 1*2*3..7
# def di(x):
# if x == 1 or x == 0:
# return 1
# else:
# return x*di(x-1)
# print(di(7))
# l1 = [132,42,123,32,21]
# l2 = []
# def func(l1,l2):
# for j in range(len(l1)):
# for i in range(len(l1)-1):
# if l1[i] < l1[i+1]:
# temp = l1[i]
# l1[i] = l1[i+1]
# l1[i+1] = temp
# l2.insert(0,l1[len(l1)-j-1])
# print(l1)
# print(l2)
# func(l1,l2)
# def f3(arg3):
# def f4(rag4):
# print('before')
# set = arg3(rag4)
# print('after')
# return set
# return f4
# @f3
# def f1(args):
# return args + 1
# def f2(args1,args2):
# return args1 + args2
# f1(321)
# f2(321,321)
# import requests
# from xml.etree import ElementTree as ET
# r = requests.get('http://www.webxml.com.cn/WebServices/WeatherWebService.asmx/getWeatherbyCityName?theCityName=上海')
# s = r.text
# a = ET.XML(s)
# for i in a:
# print(i.text)
# def f1(d,a1,a2): #斐波那契数列算法 明显算不出来乘法的值
# # print(d)
# if d == 8:
# return d,a1,a2
# a3 = a1 * a2
# r = f1(d+1,a2,a3)
# return r
# s = f1(0,1,2)
# print(s)