python 练习题
Posted muzii
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python 练习题相关的知识,希望对你有一定的参考价值。
1.【编码实现】有如下数组,需要将每个字符串中排列在任意 x 前?的所有 y 替换为 0 ,需要计算出
每个字符串需要被替换的 y 的个数,请使???您熟悉的编程语?实现。
[‘xxyyxyyyyyxxx‘, ‘yxxxx‘, ‘xyyyxxyx‘, ‘xxxx‘, ‘xxxyyy‘]
import re list1 = [‘xxyyxyyyyyxxx‘, ‘yxxxx‘, ‘xyyyxxyx‘, ‘xxxx‘, ‘xxxyyy‘,‘yxxxyyy‘] list2 = [] sum=0 for str1 in list1: while True: searchObj = re.search(‘(y+)x‘,str1) if searchObj: index=searchObj.span() sum = sum + index[1]-index[0]-1 str1=str1.replace(str1[index[0]:index[1]-1],(index[1]-1-index[0])*‘0‘,1) else: list2.append(str1) break print(‘sum(y):‘,sum) print(‘replace list:‘,list2)
打印结果:
2.【编码实现】请使???您熟悉的编程语?实现如下数据结构转换
list = [ { id: 1, type: ‘human‘, name: ‘?晗‘ }, { id: 2, type: ‘robot‘, name: ‘伊娃‘ }, { id: 3, type: ‘animal‘, name: ‘??‘ }, { id: 4, type: ‘human‘, name: ‘蔡徐坤‘ }, { id: 5, type: ‘robot‘, name: ‘夏娃‘ } ]; 转换为: { ‘human‘: [{ id: 1, name: ‘?晗‘ },{ id: 4, name: ‘蔡徐坤‘ }], ‘robot‘: [{ id: 2, name: ‘伊娃‘ },{ id: 5, name: ‘夏娃‘ }], ‘animal‘: [{ id: 3, name: ‘??‘ }], }
实现代码:
list = [ { ‘id‘: 1, ‘type‘: ‘human‘, ‘name‘: ‘?晗‘ }, { ‘id‘: 2, ‘type‘: ‘robot‘, ‘name‘: ‘伊娃‘ }, { ‘id‘: 3, ‘type‘: ‘animal‘, ‘name‘: ‘??‘ }, { ‘id‘: 4, ‘type‘: ‘human‘, ‘name‘: ‘蔡徐坤‘ }, { ‘id‘: 5, ‘type‘: ‘robot‘, ‘name‘: ‘夏娃‘ } ] dict1 = {} 方法1: for i in range(0,len(list)): s = list[i].pop(‘type‘) if s in dict1.keys(): dict1[s].append(list[i]) else: list2 = [] list2.append(list[i]) dict1[s]=list2 print(dict1) 方法2: for item in list: if item[‘type‘] in dict1.keys(): s=item.pop(‘type‘) dict1[s].append(item) #print(‘dict1‘,dict1) else: list2=[] s=item.pop(‘type‘) list2.append(item) # print(‘list2‘,list2) dict1[s] = list2 # print(‘dict1‘,dict1) prin(dict1)
打印结果:
以上是关于python 练习题的主要内容,如果未能解决你的问题,请参考以下文章
Python matplotlib 基础练习:画出正弦曲线等
spring练习,在Eclipse搭建的Spring开发环境中,使用set注入方式,实现对象的依赖关系,通过ClassPathXmlApplicationContext实体类获取Bean对象(代码片段