内置函数练习

编写 sql 查询语句功能

文件内容:

1,Eva,22,13651054608,IT
2,Vera,23,13304320533,Tearcher
3,Renault,25,1333235322,IT

实现:
装饰器登录
select name, age where age>22
select * where age>22
select * where phone like 133
select * where occ=IT(字符串比较未实现,与年龄的数字比较有冲突 待解决)

#读文件
def dir():
with open('d:/py/info.txt',encoding='utf-8')as f:
for line in f:
line = line.strip().split(',')
yield line d =dir() #实现显示
def view(option,lis):
dic = {'id':lis[0],'name':lis[1],'age':lis[2],'phone':lis[3],'occ':lis[4]}
option = option.split().pop(1).split(',')
for i in option:
if i in dic:
print(dic[i],end=' ')
elif i == '*':
print(lis)
else:
print('输入字段有误') # sel 判断
def judge(option,condition):
if '>' in condition:
a,b = condition.split('>')
for lis in dir():
if int(d.__next__()[2]) > int(b):
view(option,lis)
elif '<' in condition:
a,b = condition.split('<')
for lis in dir():
if int(d.__next__()[2]) < int(b):
view(option,lis)
elif '=' in condition:
a,b = condition.split('=')
for lis in dir():
if int(d.__next__()[2]) == int(b):
view(option,lis) #实现 like 查找功能
def like(s):
if 'like' in s and '*' in s:
val,con = s.split('like')
val = val.split().pop().strip()
con = con.strip()
for lis in dir():
if con in d.__next__()[3]:
print(lis) #实现登录
def login(f):
def inner():
use = input('账号 >>>')
pwd = input('密码 >>>')
if use == 'ysg' and pwd == '':
ret = f()
return ret
else:
print('登录失败')
return inner #实现 select(主函数)
@login
def sel():
s = input('输入语句 >>>')
#s = 'select name,age where age>22'
option,condition = s.split('where')
condition = condition.strip()
#strs(s) #实现字符串比较的功能
like(s) #实现 like 查找功能
judge(option,condition) #实现数字比较的功能 sel()

面试题:阅读代码,说出输出结果

def extendList(val,list=[]):
list.append(val)
return list
list = extendList(10)
list2 = extendList(123,[])
list3 = extendList('a') print("list = %s"%list)
print("list2 = %s"%list2)
print("list3 = %s"%list3) #结果
list = [10, 'a']
list2 = [123]
list3 = [10, 'a']

day 15 - 2 内置函数练习的更多相关文章

  1. day 15 - 1 内置函数

    内置函数 作用域相关 locals() globals() #这两组开始容易搞混 print(locals()) #返回本地作用域中的所有名字 print(globals()) #返回全局作用域中的所 ...

  2. day15,内置函数一

    1,复习,如何从生成器里面取值,next(每次取一个值),send(不可以用在第一个,取下一个的时候,给上一个地方传一个值),for(没有break会一直取,直到取完),强制转换(会一次性把数据加载到 ...

  3. python语法基础-函数-内置函数和匿名函数-长期维护

    ##################     内置函数        #######################  """ 一共是 68个内置函数: 反射相关的内置函 ...

  4. Learning-Python【15】:内置函数

    截止到Python版本3.6.2,一共为我们提供了68个内置函数.它们就是Python提供的直接可以拿来使用的所有函数. 这个表的顺序是按照首字母的排列顺序来的,都混乱的堆在一起.比如,oct和bin ...

  5. 十五. Python基础(15)--内置函数-1

    十五. Python基础(15)--内置函数-1 1 ● eval(), exec(), compile() 执行字符串数据类型的python代码 检测#import os 'import' in c ...

  6. python 基础篇 15 内置函数和匿名函数

    ------------------------>>>>>>>>>>>>>>>内置函数<<< ...

  7. Python学习进程(15)常用内置函数

        本节介绍Python的一些常用的内置函数.     (1)cmp(x, y): cmp()函数比较 x 和 y 两个对象,并根据比较结果返回一个整数,如果 x<y,则返回-1:如果x&g ...

  8. day11 - 15(装饰器、生成器、迭代器、内置函数、推导式)

    day11:装饰器(装饰器形成.装饰器作用.@语法糖.原则.固定模式) 装饰器形成:最简单的.有返回值的.有一个参数的.万能参数 函数起的作用:装饰器用于在已经完成的函数前后增加功能 语法糖:使代码变 ...

  9. Python Day 15 递归、匿名函数、内置函数

    阅读目录 内容回顾 生成器的send方法 递归 匿名函数 内置函数 ##内容回顾 #1.带参装饰器 - 自定义 | wraps def wrap(info) def outer1(func): fro ...

随机推荐

  1. Django-CRM项目学习(二)-模仿admin实现stark

    开始今日份整理 1.stark模块基本操作 1.1 stark模块的启动 保证django自动的加载每一个app下的stark.py文件 创建django项目,创建stark项目,start app ...

  2. SQL学习 DECODE

    from 百度百科: DECODE有什么用途呢? 先构造一个例子,假设我们想给这些职员加工资,其标准是:工资在8000元以下的加20%:工资在8000元或以上的加15%,通常的做法是,先选出记录中的工 ...

  3. 在IIS上部署(托管).NET Core站点

    部署教程 操作系统要求 Windows 7 或更高版本 Windows Server 2008 R2 或更高版本 依赖的组件 Runtime & Hosting Bundle   image. ...

  4. Educational Codeforces Round 62 (Rated for Div. 2) Solution

    最近省队前联考被杭二成七南外什么的吊锤得布星,拿一场Div. 2恢复信心 然后Div.2 Rk3.Div. 1+Div. 2 Rk9,rating大涨200引起舒适 现在的Div. 2都怎么了,最难题 ...

  5. Java 200+ 面试题补充③ Dubbo 模块

    昨天在我的 Java 面试粉丝群里,有一个只有一年开发经验的小伙伴只用了三天时间,就找到了一个年薪 20 万的工作,真是替他感到开心. 他的经历告诉我们:除了加强自我实战经验之外,还要努力积累自己的理 ...

  6. 关于Jpa和Mybatis的一些看法

    现在网络上充斥着Jpa和Mybatis的一些对比.其实狭义上来说是hibernate和mybatis之间的比较. 例如:为什么感觉国内比较流行的 mybatis 在国外好像没人用的样子? 下面是一些截 ...

  7. Java里的不能与无用.

    不能获取参数名 , 导致函数的参数名无用. 在MyBatis的方法里. 参数名是无法反射得到的. 导致必须使用注解,指定参数名. 这样的话. 参数名就没有了意义.

  8. OCR技术浅析-tesserOCR(3)

    tesserOCR使用 tesserOCR是文字识别软件(惠普公司开源) Optical Character Recognition (OCR)即光学字符辨识是把打印文本转换成一个数字表示的过程.它有 ...

  9. C# 远程获取图片二进制

    直接上代码, 紧做记录. public byte[] GetByteByImgUrl() { System.Net.WebRequest webreq = System.Net.WebRequest. ...

  10. mysq基础操作

    创建表: create table customer(mid char(5) primary key,name varchar(20),birth date,sex char(1) DEFAULT ' ...