Python初学者第九天 字符串、列表、字典练习
# -*- coding: utf-8 -*-
写代码,有如下字典,按要求实现每个功能dic={'k1':'v1','k2':'v2','k3':'v3'}
1.请循环遍历出所有的key:
dic={'k1':'v1','k2':'v2','k3':'v3'}
print(dic.keys())
for key in dic.items():
print(dic.keys())
2.请循环遍历出所有的value:
dic={'k1':'v1','k2':'v2','k3':'v3'}
print(dic.values())
for key in dic.items():
print(dic.values())
3.请循环遍历出所有的key和value:
dic={'k1':'v1','k2':'v2','k3':'v3'}
for k,v in dic.items():
print(k,v)
4.请在字典中添加一个键值对,'k4':'v4',输出添加后的字典
dic={'k1':'v1','k2':'v2','k3':'v3'}
dic['k4']='v4'
print(dic)
5.请删除字典中键值对'k1','v1',并输出删除后的字典
dic={'k1':'v1','k2':'v2','k3':'v3'}
del dic['k1']
print(dic)
6.请删除字典中键'k5'对应的键值对,如果字典中不存在键'k5',则不报错,并让其返回None
dic={'k1':'v1','k2':'v2','k3':'v3'}
dic.pop('k5')
print(dic)
7.请获取字典中'k2'对应的值
dic={'k1':'v1','k2':'v2','k3':'v3'}
dic.get('k2')
print(dic.get('k2'))
8.请获取字典中'k6'对应的值,如果键'k6'不存在,则不报错,并且让其返回None
dic={'k1':'v1','k2':'v2','k3':'v3'}
dic.get('k6')
print(dic.get('k6'))
9.现有dic2 = {'k1':'v111','a':'b'}通过一行操作使dic2 = {‘k1’:’v1’,’k2’:’v2’,’k3’:’v3’,a’:’b’}
dic={'k1':'v1','k2':'v2','k3':'v3'}
dic2 = {'k1':'v111','a':'b'}
dic2.update(dic)
print(dic2)
10.组合嵌套题。写代码,有如下列表,按照要求实现每一个功能
lis = [[‘k’,[‘qwe’,20,{‘k1’:[‘tt’,3,’1’]},89],’ab’]]
1.将列表lis中'tt'变成大写(用两种方式)
方法一:
lis = [['k', ['qwe', 20, {'k1': ['tt', 3, '1']}, 89], 'ab']]
lis[0][1][2]['k1'][0] = lis[0][1][2]['k1'][0].upper()
print(lis)
方法二:
lis = [['k', ['qwe', 20, {'k1': ['tt', 3, '1']}, 89], 'ab']]
lis[0][1][2].get('k1')[0] = lis[0][1][2]['k1'][0].upper()
print(lis)
2.将列表中数字3变成字符串‘100’(用两种方式)
方法一:
lis = [['k', ['qwe', 20, {'k1': ['tt', 3, '1']}, 89], 'ab']]
lis[0][1][2]['k1'][1] = '100'
print(lis)
方法二:
lis = [['k', ['qwe', 20, {'k1': ['tt', 3, '1']}, 89], 'ab']]
lis[0][1][2].get('k1')[1] = '100'
print(lis)
3.将列表中字符串‘1’变成数字101(用两种方式)
方法一:
lis = [['k', ['qwe', 20, {'k1': ['tt', 3, '1']}, 89], 'ab']]
lis[0][1][2]['k1'][2] = 101
print(lis)
方法二:
lis = [['k', ['qwe', 20, {'k1': ['tt', 3, '1']}, 89], 'ab']]
lis[0][1][2].get('k1')[2] = 101
print(lis) 11.按照要求实现以下功能:
现有一个列表li = [1,2,3,’a’,’b’,4,’c’],有一个字典(此字典是动态生成的,你并不知道它里面有多少键值对,所以使用dic={}模拟此字典);现在需要完成这样的操作:
如果字典中没有‘k1’这个键,那就创建这个‘k1’键和其对于的值(该键对应的值设置为空列表),并将列表li中的索引为奇数对应的元素,添加到‘k1’这个键对应的空列表中。
如果该字典中有‘k1’这个键,且k1对应的value是列表类型,那就将列表li中的索引位为偶数对应的元素,添加到‘k1’这个键对应的值中。
li = [1,2,3,'a','b',4,'c']
li1 = []
dic = {'k1':li1}
if 'k1' not in dic:
for i in li:
if li.index(i) % 2 == 1:
li1.append(i)
print(li1)
dic['k1'] = li1
print(dic)
else:
if type(li1) == list:
for i in li:
if li.index(i) % 2 == 0:
li1.append(i)
dic['k1'] = li1
print(dic)
# 12.已知字符串 a = “aAsmr3idd4bgs7Dlsf9eAF”,要求如下
# 12.1 请将a字符串的大写改为小写,小写改为大写。
a = 'aAsmr3idd4bgs7Dlsf9eAF'
a = a.swapcase()
print(a)
# 12.2 请将a字符串的数字取出,并输出成一个新的字符串。
a = 'aAsmr3idd4bgs7Dlsf9eAF'
l = []
for s in a:
if s.isdigit():
l.append(s)
print(l)
print(''.join(l))
print(''.join([s for s in a if s.isdigit()]))
# 12.3 请统计a字符串出现的每个字母的出现次数(忽略大小写,a与A是同一个字母),并输出成一个字典。 例 {‘a’:4,’b’:2}
a = 'aAsmr3idd4bgs7Dlsf9eAF'
a = a.lower()
b = {}
for s in set(a):
b[s] = a.count(s)
print(b)
Python初学者第九天 字符串、列表、字典练习的更多相关文章
- python字符串/列表/字典互相转换
python字符串/列表/字典互相转换 目录 字符串与列表 字符串与字典 列表与字典 字符串与列表 字符串转列表 1.整体转换 str1 = 'hello world' print(str1.spli ...
- 初识python 字符串 列表 字典相关操作
python基础(一): 运算符: 算术运算: 除了基本的+ - * / 以外,还需要知道 : // 为取整除 返回的市商的整数部分 例如: 9 // 2 ---> 4 , 9.0 // ...
- python之字符串,列表,字典,元组,集合内置方法总结
目录 数字类型的内置方法 整型/浮点型 字符串类型的内置方法 列表的内置方法 字典的内置方法 元组的内置方法 集合类型内置方法 布尔类型 数据类型总结 数字类型的内置方法 整型/浮点型 加 + 减 - ...
- python数据类型详解及列表字典集合推导式详解
一.运算符 Python语言支持以下类型的运算符: 算术运算符 如: #!/usr/bin/env python # -*- coding:utf-8 -*- a = 5 b = 6 print(a ...
- python初学者日记01(字符串操作方法)
时间:2018/12/16 作者:永远的码农(博客园) 环境: win10,pycharm2018,python3.7.1 1.1 基础操作(交互输入输出) input = input(" ...
- python基础一 -------如何在列表字典集合中根据条件筛选数据
如何在列表字典集合中根据条件筛选数据 一:列表 先随机生成一个列表,过滤掉负数 1,普通for循环迭代判断 2,filter()函数判断,filter(函数,list|tuple|string) fi ...
- python字符串列表字典相互转换
字符串转换成字典 json越来越流行,通过python获取到json格式的字符串后,可以通过eval函数转换成dict格式: >>> a='{"name":&qu ...
- python字符串,列表,字典的常用方法
本篇内容 字符串的常用方法 列表的常用方法 字典的常用方法 字符串的常用方法 center 字符居中显示,指定字符串长度,填充指定的填充字符 string = "40kuai" p ...
- Python初学者笔记(3):输出列表中的奇数/奇数项,字符串中的偶数项,字符串大小写转换
[1]a=[8,13,11,6,26,19,24]1)请输出列表a中的奇数项2)请输出列表a中的奇数 解:1) a=[8,13,11,6,26,19,24] print a[::2] Result:& ...
随机推荐
- jconsole 和jvisualVM 监控远程 spring boot程序
监控java 程序 增加启动参数 java \ -Djava.rmi.server.hostname=192.168.2.39 \ -Dcom.sun.management.jmxremote \- ...
- SQL Cookbook—插入、更新与删除
涉及到的问题–1.从一个表向另外的表中复制行–2.复制表定义(包含表记录)–3.一次向多个表中插入记录–4.–5.当相应行存在时更新–6.用其他表中的值更新–7.删除违反参照完整性的记录 –1.从一个 ...
- Centos7 安装mysql教程
参考原文:http://www.centoscn.com/mysql/2016/0315/6844.html 环境 CentOS 7.1 (64-bit system) MySQL 5.6.24 Ce ...
- ajax传json
需求 前台有许多字段需要用ajax传送给后台, 如果给直接将字段封装成JSON对象传给后台会很方便 解决 ajax 发送 var str = {"name":"xiaom ...
- 解决maven项目中,缺少 maven dependencies
因为项目需要将普通项目转换为maven项目,在右键 ’项目‘configure 后,添加maven后,发现缺少 maven dependencies,于是从网上找了一些处理措施,大体上是在.class ...
- Linux常用指令整理
Linux常用命令整理 快捷键 [Tab] [Tab] 接在一串指令的第一个字的后面,则为"命令补全": [Tab] 接在一串指令的第二个字以后时,则为"文件补齐&quo ...
- docker 容器中设置 mysql lampp php软链接
在容器中安装xampp后,进入到终端,直接输入mysql php 发现报错,命令未被发现.如果输入/opt/lampp/bin/mysql 就可以进入了,所以我们要找到在容器中安装的位置,然后将他 ...
- Linux-学习笔记(PHP向)<一>
Linux常用命令 使用PHP服务器端脚本编程语言进行网站开发,需要在lamp环境下进行,Linux作为”四剑客”之一是有必要了解熟悉的,而Linux系统并不像windows操作系统那样,以图形化的界 ...
- 学习CSS制作菜单列表,举一反三
1.普通的二三级菜单 <!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type&qu ...
- 软件项目技术点(1)——Tween算法及缓动效果
AxeSlide软件项目梳理 canvas绘图系列知识点整理 Tween算法及缓动效果 软件里在切换步序时需要有过渡动画效果,从当前位置的画面缓动到目标位置的画面.动画效果可重新查看文章系列第一篇 ...