# -*- 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初学者第九天 字符串、列表、字典练习的更多相关文章

  1. python字符串/列表/字典互相转换

    python字符串/列表/字典互相转换 目录 字符串与列表 字符串与字典 列表与字典 字符串与列表 字符串转列表 1.整体转换 str1 = 'hello world' print(str1.spli ...

  2. 初识python 字符串 列表 字典相关操作

    python基础(一): 运算符: 算术运算: 除了基本的+ - * / 以外,还需要知道 :  // 为取整除 返回的市商的整数部分 例如: 9 // 2  ---> 4  , 9.0 //  ...

  3. python之字符串,列表,字典,元组,集合内置方法总结

    目录 数字类型的内置方法 整型/浮点型 字符串类型的内置方法 列表的内置方法 字典的内置方法 元组的内置方法 集合类型内置方法 布尔类型 数据类型总结 数字类型的内置方法 整型/浮点型 加 + 减 - ...

  4. python数据类型详解及列表字典集合推导式详解

    一.运算符 Python语言支持以下类型的运算符: 算术运算符 如: #!/usr/bin/env python # -*- coding:utf-8 -*- a = 5 b = 6 print(a ...

  5. python初学者日记01(字符串操作方法)

    时间:2018/12/16 作者:永远的码农(博客园) 环境: win10,pycharm2018,python3.7.1 1.1  基础操作(交互输入输出) input = input(" ...

  6. python基础一 -------如何在列表字典集合中根据条件筛选数据

    如何在列表字典集合中根据条件筛选数据 一:列表 先随机生成一个列表,过滤掉负数 1,普通for循环迭代判断 2,filter()函数判断,filter(函数,list|tuple|string) fi ...

  7. python字符串列表字典相互转换

    字符串转换成字典 json越来越流行,通过python获取到json格式的字符串后,可以通过eval函数转换成dict格式: >>> a='{"name":&qu ...

  8. python字符串,列表,字典的常用方法

    本篇内容 字符串的常用方法 列表的常用方法 字典的常用方法 字符串的常用方法 center 字符居中显示,指定字符串长度,填充指定的填充字符 string = "40kuai" p ...

  9. 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:& ...

随机推荐

  1. 《大数据日知录》读书笔记-ch3大数据常用的算法与数据结构

    布隆过滤器(bloom filter,BF): 二进制向量数据结构,时空效率很好,尤其是空间效率极高.作用:检测某个元素在某个巨量集合中存在. 构造: 查询: 不会发生漏判(false negativ ...

  2. asp.net WebService技术简介

    1.什么是web service? 这里借助百度百科专业的解释:web service是一个平台独立的.低耦合的.自包含的.基于可编程的web应用程序(说简单点,就是使用web service继续不需 ...

  3. CSS生成小三角

    前言:小三角的应用场景:鼠标移动到某个按钮上面,查看信息详情时,信息详情弹出框有时候会需要一个小三角. 代码如下: <div id='triangle'></div> #tri ...

  4. ORA-XXXX错误集合

    第一.ORA-12514:listener does not currently know of service requested in connect descriptor 监听器巴拉巴拉一堆,然 ...

  5. Druid SQL 解析器概览

    概览 Druid 的官方 wiki 对 SQL 解析器部分的讲解内容并不多,但虽然不多,也有利于完全没接触过 Druid 的人对 SQL 解析器有个初步的印象. 说到解析器,脑海里便很容易浮现 par ...

  6. ES6学习准备

    ES6学习准备 选择运行环境 ES6的语法,nodeJs.浏览器不一定都支持,不同版本的支持情况不一样.在学习过程中,如何确定是自己写的代码有问题,还是运行环境不支持呢? 首先,浏览器端一般支持的特性 ...

  7. JavaScript设计模式系列学习笔记目录

    说明 本系列笔记参考书籍<JavaScript设计模式>.<JavaScript高级程序设计3> 参考博客:汤姆大叔博客:http://www.cnblogs.com/TomX ...

  8. Scrum 冲刺博客第二篇

    一.当天站立式会议照片一张 二.每个人的工作 (有work item 的ID),并将其记录在码云项目管理中 昨天已完成的工作 配置和连接微信小程序服务器 个人界面设计 部主页界面设计 答题界面设计 今 ...

  9. codeforces 638B—— Making Genome in Berland——————【类似拓扑排序】

    Making Genome in Berland time limit per test 1 second memory limit per test 256 megabytes input stan ...

  10. 记一次走心One 2 One沟通

    聊的比较零零碎碎,内容比较散,有些solution不错,记一些要点吧(1)要学会汇报,就是坐你身边的人,也未必知道你在干啥 三个人都在砌墙.当人们分别问他们在做什么,他们的答案却不一样:第一个人头也没 ...