Python学习

# 数据结构:dict list tuple set str
# 数据类型:int tuple dict bool
reversed()
l=[1,2,3,4,5,6]
l.list.reverse()
print(l)
l2=reversed(l) #返回翻转迭代器 不改变原来的列表 保留原列表 返回一个反向的迭代器
#slice切片
l=(1,2,23,213,5612,342,43)
sli=slice(1,5,2)#切片规则
print(l[sli])  == print(l[1:5:2])
#format()  str.format
print(format('test','<20'))
print(format('test','>20'))
#bytes转换成bytes
#拿到gbk编码 转成utf-8  :先 decode 后encode
print(bytes('你好',encoding='GBK').decode('GBK'))#"xc3"unicode gbk
print(bytes('你好',encoding='utf-8').decode('utf-8'))#"xbd"unicode utf-8
#文件gbk decode读到内存转成unicode 转成bytes  utf-8
#网络编程  只能传二进制
#照片和视频以二进制存储
#html网页爬取到的也是编码
# bytearray
b_array=bytearray('你好',encoding='utf-8')
print(b_array)
print(b_array[0])
s1='alexa'
s2='alex'
#memoryview 字节类型切片不占内存 转换成字符串占内存
#字符按照unicode转换成数字 ord
print(ord('a'))
# 数字按照unicode转换成字符 chr
#字符串格式化
name='eggg'
print('你好%s'%name)#%s str()
print('你好%r'%name)#%r repr()
repr('1')#'1'
repr(1)#1
#内置函数
# all有一个为false即为false
print(all['a','',123])
print(all['a',123])
print(all[0,123])
#any
l=[1,2,3]
l2=['a','b','c']
print(zip(l,l2))#内存地址迭代器
for i in zip(l,l2):
    print i
    #(1,'a')  (2,‘b')    (3,'c')

def is_odd(x):
    return x%2==1
ret=filter(is_odd,[1,4,6,7,9.12,17])
[i for i in [1,4,6,7,9.12,17] if i %2 ==1]
def is_str(s):
    if type(s)==strs:
        return True
        return types(s)==strs
#删除空字符串
def is_str(s):
    if type(s)!=int:
    return s  and  str(s).strip()
ret=filter(is_str,[1,'hello','',' ',None,[].6,7,'world',12,17])

from math import sqrt
print(sqrt(64))
def func(num):
    res=sqrt(num)
    return res %1==0 #转换整数
filter(func,range(1,101))
for i in ret:
    print (i)
ret=map(abs,[1,-4,6,-8])
for i in ret:
    print (i)
#fileter执行个数改变只管筛选不改变原来的值  map改变值元素个数不变、
l=[12,4,5,-6]
l.sort(key=abs)#在原列表的基础上进行排序
print (l)
sorted(l)#直接生成一个新列表 列表不大占内存
print(sorted(l,key=abs,reversed=True))


#思维导图
#员工信息表:完善代码 背下来
dic={'name':1,'id':0,'age':2,'phone':3,'job':4}
def get_line(filename):
    with open(filename,encoding='utf-8') as f:
        for line in f:
            line=line.strip()
            line_lst=line.split(',')
            #print(lst)
            yield line_lst
def condition_filter(condition):
    '''条件筛选'''
    condition=codition.strip()
    if '>' in condition:
        col,val=condition.split('>')
        print(col,val)
        g=get_line('useinfo')
        for line_lst in g:
           if int(line_lst[dic[col]]) > int(val):
               print(line_lst)
               yield line_lst


def views(view_lst,staff_g):
  '''展示符合条件的值'''
  if '*'in view_lst:
      view_lst=dic.keys()
  for staff_info in staff_g:
      print('*',staff_info)
      print (staff_info[1],staff_info[2])
      info=[]
      for i in view_lst:
          print(staff_info[1],end='')
          print(' ')
          #print(info.append(staff_info[dic[i]]))









#接收用户的信息 分析信息

# 读取文件 将文件中内容整理到内存
def get_line(filename):
    with open(filename,encoding='utf-8') as f:
        for line in f:
            line=line.strip()
            line_lst=line.split(',')
            #print(lst)
            yield line_lst
get_line('userinfo')
# 接受用户信息分析信息
ret= input('>>>')
ret ='select name ,age where age>32'
view,codition=ret.split('where')
print(view,codition)
print(view.split('select').pop[0])
print(view.replace('select','').strip())
view=view.replace('select','').strip()
view_lst=view.split(',')
print(view_lst,codition)
condition_filter(condition)

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

落雪snowflake

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值