# -*- 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. 配置idea解决乱码

    在项目开发过程中,我们一般希望在修改完代码之后不重启项目即可提现出修改的结果,那么热部署项目就显得十分必要了.在idea中将项目热部署至tomcat中的方法如下: 首先打开tomcat配置界面,在se ...

  2. java有序map

    我们知道TreeMap的key是有顺序的,是自然顺序,也可以指定比较函数. 但TreeMap默认不是按插入的顺序.  为了让Map按照插入顺序显示,可以使用LinkedHashMap吧. 它内部有一个 ...

  3. 初识unitest框架

    1.借助IED录制脚本 2.导出脚本,选择用Python语言 将脚本导出,保存为 baidu.py ,通过 python IDLE 编辑器打开 引入unittest框架解释,见代码的的注释 # -*- ...

  4. C 六度空间理论的实现

    “六度空间”理论又称作“六度分隔(Six Degrees of Separation)”理论.这个理论可以通俗地阐述为:“你和任何一个陌生人之间所间隔的人不会超过六个,也就是说,最多通过五个人你就能够 ...

  5. 【随笔】使用apt-spy来更新你的debian源

    debian什么最方便,当然是用apt-get intsall 命令来安装软件了.使用apt-get什么最重要,自然是下载源了. debian版本自带的源肯定不是最快的,考虑到个人所处的位置.网速等方 ...

  6. 【lua】如何倒序查找字符

    现在有这样一个需求,有一个字符串,需要查找字符i最后出现的位置,不过相对于其他语言来说,Lua并没有提供这一操作,那么如何是好? 现在有这样几个方法: string.sub(str, i ,j) 功能 ...

  7. java中的各种命令参数

    java中有很多命令参数,这些命令参数有些是控制jvm行为的,有的则是供应用程序使用.我所了解的参数主要有三种,现在说一说这三种类型的参数. (1)命令行参数. 命令行参数就是类似与c语言的命令行参数 ...

  8. leetcode_787【K 站中转内最便宜的航班】

    有 n 个城市通过 m 个航班连接.每个航班都从城市 u 开始,以价格 w 抵达 v. 现在给定所有的城市和航班,以及出发城市 src 和目的地 dst,你的任务是找到从 src 到 dst 最多经过 ...

  9. Firebird 列可空非空修改

    2018-12-04 至少到Firebird 3.0.4 已经添加了设置可空 和 非空的语法:如 -- 删除非空(设置为可空) ALTER TABLE TECH ALTER label drop NO ...

  10. webservice随记

    WebService:跨平台.系统.跨语言间相互调用 CXF:Axis(Apache)-> Axis2(Apache)XFire -> CXF(Celtrix + XFire)(Apach ...