• python学习Day11--试题


    大题解析

      1 '''
      2 # 在python3版本中,s1='老男孩',如何将s1转化成utf-8的bytes类型?/
      3 # 转化成功后,得到s2,如何将s2转化成gbk的bytes类型。
      4 s1='老男孩'
      5 s2=s1.encode('utf-8')
      6 print(s2)
      7 s3=s2.decode('utf-8')
      8 print(s3)
      9 s4=s3.encode('gbk')
     10 print(s4)
     11 
     12 # l=[1,1,2,2,3,4,5,5,6,6,7,8]去重,并还原成列表格式
     13 l=[1,1,2,2,3,4,5,5,6,6,7,8]
     14 l1=set(l)
     15 l=list(l1)
     16 print(l)
     17 
     18 # '1,2,3'如何变成['1','2','3']?如何变成[1,2,3]?
     19 s1='1,2,3'
     20 s1=s1.split(',')
     21 print(s1)
     22 for i in range(len(s1)):
     23     s1[i]=int(s1[i])
     24 print(s1)
     25 
     26 # 1、将字符串"k: 1|k1:2|k2:3|k3 :4"处理成字典{'k':1,'k1:2'....}
     27 s1="k: 1|k1:2|k2:3|k3 :4"
     28 s1=s1.split('|')
     29 dic={}
     30 for i in range(len(s1)):
     31     [k,v]=s1[i].split(':')
     32     dic[k.strip()]=int(v.strip())
     33 print(dic)
     34 
     35 # 2、实现一个整数加法计算器:
     36 # 如:content=input('请输入内容:') #如用户输入:5+7+8...(最少输入两个数相加),
     37 # 将最后的结果添加到此字典中(替换None):
     38 # dic={'最终计算结果':None}
     39 dic={'最终计算结果':None}
     40 content=input('请输入内容:').strip()
     41 lst=content.split("+")
     42 sum=0
     43 for el in lst:
     44     sum=sum+int(el.strip())
     45 print(sum)
     46 dic['最终计算结果']=sum
     47 print(dic)
     48 
     49 # 3、写函数,函数可接受多个字符串类型的参数。此函数的功能是将所有的参数以'_'的形式
     50 # 隔开,然后追加到一个文件中。
     51 def main(file_name,*args):
     52     s="_".join(args)
     53     f=open(file_name,mode='a',encoding='utf-8')
     54     f.write(s)
     55     f.flush()
     56     f.close()
     57 
     58 # 4、写函数完成以下功能:
     59 #   给函数传入一个列表(此列表里面的元素必须全是str类型),将列表中的每个元素按照顺序依次加上他们的索引,形成新的
     60 # 元素,并添加到一个新列表,将列表返回
     61 def func(lst):
     62     new_lst=[]
     63     for i in range(len(lst)):
     64         new_lst.append(lst[i]+str(i))
     65     return(new_lst)
     66 ll=['alex','太白']
     67 print(func(ll))
     68 
     69 # 5、有文件t1.txt里面的内容为:(6分)
     70 #   1,alex,22,13651054608,IT
     71 #     2,wusir,23,13304320533,Tearcher
     72 #     3,taibai,18,1333235322,IT
     73 #   利用文件操作,将其构造成如下数据类型:
     74 #   [{'id':'1','name':'alex','age':'22','phone':'13651054608','             'job':'IT'},......]
     75 result=[]
     76 with open("t1.txt",encoding="utf-8") as f:
     77     # 读取每一行数据
     78     for line in f:
     79         dic={}
     80         lst=line.split(",")
     81         dic['id']=lst[0].strip()
     82         dic['name']=lst[1].strip()
     83         dic['age']=lst[2].strip()
     84         dic['phone']=lst[3].strip()
     85         dic['job']=lst[4].strip()
     86         result.append(dic)
     87     print(result)
     88 
     89 # 6、有如下值li=[11,22,33,44,55,77,88,99,90],将所有大于66的值保存至字典的第一个key中,
     90 # 将小于66的值保存至第二个key中。
     91 li=[11,22,33,44,55,77,88,99,90]
     92 result={}
     93 for row in li:
     94     if row > 66:
     95         result.setdefault('k1',[]).append(row)  #注意setdefault的用途
     96     else:
     97         result.setdefault('k2',[]).append(row)
     98 print(result)
     99 '''
    100 # 7、写函数,完成以下功能:
    101 #  例如有:
    102 #  user_list=[
    103 #       {"name":"alex","hobby":"抽烟"},
    104 #       {"name":"alex","hobby":"喝酒"},
    105 #       {"name":"alex","hobby":"烫头"},
    106 #       {"name":"wusir","hobby":"喊麦"},
    107 #       {"name":"wusir","hobby":"街舞"},
    108 #        ]
    109 #   编写函数处理user_list,并返回如下结果:
    110 # [{"name":"alex","hobby_list":["抽烟","喝酒","烫头",]},
    111 # {"name":"wusir","hobby_list":["喊麦","街舞"]},]
    112 def main(user_list):
    113     new_list=[]
    114     old_dic={}
    115     for el in user_list:
    116         k,v=el.values()
    117         old_dic.setdefault(k,[]).append(v)
    118     for k,v in old_dic.items():
    119         new_dic={}
    120         new_dic['name']=k
    121         new_dic['hobby_list']=v
    122         new_list.append(new_dic)
    123     print(new_list)
    124 
    125 user_list=[
    126     {"name":"alex","hobby":"抽烟"},
    127     {"name":"alex","hobby":"喝酒"},
    128     {"name":"alex","hobby":"烫头"},
    129     {"name":"wusir","hobby":"喊麦"},
    130     {"name":"wusir","hobby":"街舞"},
    131     ]
    132 main(user_list)
  • 相关阅读:
    性能测试流程
    N种自动化测试框架(包含自动化和性能,总有一款适合你)
    自动化测试框架:jmeter + maven+ jenkins
    oracle中删除表:drop、delete、truncate
    SpringBoot开发mockserver及生成swagger接口文档
    五步法颈椎病自我按摩图解
    自动化必备:自动化持续集成环境搭建(上):git + maven + jenkins
    玩转jmeter:beanshell必备技能
    EFK-2:ElasticSearch高性能高可用架构
    MySQL5.7之在线DDL不会锁表
  • 原文地址:https://www.cnblogs.com/fengxb1213/p/12290775.html
Copyright © 2020-2023  润新知