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:& ...
随机推荐
- 20164324王启元 Exp1 PC平台逆向破解
一.逆向及Bof基础实践说明 1.1实践目标 本次实践的对象是一个名为pwn1的linux可执行文件. 该程序正常执行流程是:main调用foo函数,foo函数会简单回显任何用户输入的字符串. 手工修 ...
- Javascript面向对象编程(转)
http://blog.csdn.net/lmj623565791/article/details/29210679 其实,从这个面向对象编程的例子来看,思路还是很清晰的. 第一步: 构造函数,用于初 ...
- Python爬虫抓取某音乐网站MP3(下载歌曲、存入Sqlite)
最近右胳膊受伤,打了石膏在家休息.为了实现之前的想法,就用左手打字.写代码,查资料完成了这个资源小爬虫.网页爬虫, 最主要的是协议分析(必须要弄清楚自己的目的),另外就是要考虑对爬取的数据归类,存储. ...
- selenium+Python(Js处理日历控件)
日历控件是web网站上经常会遇到的一个场景,有些输入框是可以直接输入日期的,有些不能,以我们经常抢票的12306网站为例,详细讲解如何解决日历控件为readonly属性的问题. 基本思路:先用js去掉 ...
- 【Css】一个简单的选项卡
这次来做一个简单的选项卡. 选项卡其实就分3个部分:html代码,用于显示的内容:css代码,用于显示的样式:javascript代码,用于点击事件. 老规矩,先写一个html坯子. <!DOC ...
- 存储器的保护(二)——《x86汇编语言:从实模式到保护模式》读书笔记19
接着上一篇博文说. 5.代码段执行时的保护 每个代码段都有自己的段界限.同栈段一个道理,有效界限和G位相关. G=0:有效界限 = 描述符中的段界限 G=1:有效界限 = 描述符中的段界限值 * 0x ...
- 如何优雅地使用 VSCode 来编辑 vue 文件?
最近有个项目使用了 Vue.js ,本来一直使用的是 PHPStorm 来进行开发,可是遇到了很多问题. 后来,果断放弃收费的 PHPStorm ,改用 vscode (Visual Stdio Co ...
- golang基础---Slice切片
切片Slice在go语言中是单独的类型(指向底层的数组),不同于python(对可迭代对象操作的工具),注意区分数组和slice的区别 定义一个空slice,格式var s []int,这种既没有长度 ...
- [java源码解析]对HashMap源码的分析(二)
上文我们讲了HashMap那骚骚的逻辑结构,这一篇我们来吹吹它的实现思想,也就是算法层面.有兴趣看下或者回顾上一篇HashMap逻辑层面的,可以看下HashMap源码解析(一).使用了哈希表得“拉链法 ...
- ASP.NET Core中使用自定义路由
上一篇文章<ASP.NET Core中使用默认MVC路由>提到了如何使用默认的MVC路由配置,通过这个配置,我们就可以把请求路由到Controller和Action,通常情况下我们使用默认 ...