1.请将列表中的每个元素通过 "_" 链接起来。
users = ['大黑哥','龚明阳',666,'渣渣辉']

users = ['大黑哥','龚明阳',666,'渣渣辉']
users[2] = str(users[2])
users = "_".join(users)
print(users)

2.请将元组 v1 = (11,22,33) 中的所有元素追加到列表 v2 = [44,55,66] 中。

v1 = (11,22,33)
v2 = [44,55,66]
for i in v1:
    v2.append(i)
print(v2)

3.请将元组 v1 = (11,22,33,44,55,66,77,88,99)中的所有偶数索引位置的元素追加到新列表中。

v1 = (11,22,33,44,55,66,77,88,99)
lst = []
count = 0
for i in v1:
    if count % 2 == 0:
        lst.append(i)
    count += 1
print(lst)

4.将字典的键和值分别追加到key_list 和 value_list 两个列表中,如:
key_list = []
value_list = []
info = {'k1':'v1','k2':'v2','k3':'v3'}

key_list = []
value_list = []
info = {'k1':'v1','k2':'v2','k3':'v3'}
for k,v in info.items():
    key_list.append(k)
    value_list.append(v)
print(key_list)
print(value_list )

5.字典dic = {'k1': "v1", "k2": "v2", "k3": [11,22,33]}

a. 请循环输出所有的key

dic = {'k1': "v1", "k2": "v2", "k3": [11,22,33]}
for k in dic.keys():
    print(k)

b. 请循环输出所有的value

dic = {'k1': "v1", "k2": "v2", "k3": [11,22,33]}
for v in dic.values():
    print(v)

c. 请循环输出所有的key和value

dic = {'k1': "v1", "k2": "v2", "k3": [11,22,33]}
for k,v in dic.items():
    print(k,v)

d. 请在字典中添加一个键值对,"k4": "v4",输出添加后的字典

dic = {'k1': "v1", "k2": "v2", "k3": [11,22,33]}
dic["k4"] = "v4"
print(dic)

e. 请在修改字典中 "k1" 对应的值为 "alex",输出修改后的字典

dic = {'k1': "v1", "k2": "v2", "k3": [11,22,33]}
dic["k1"] = "alex"
print(dic)

f. 请在k3对应的值中追加一个元素 44,输出修改后的字典

dic = {'k1': "v1", "k2": "v2", "k3": [11,22,33]}
dic["k3"].append(44)
print(dic)

g. 请在k3对应的值的第 1 个位置插入个元素 18,输出修改后的字典

dic = {'k1': "v1", "k2": "v2", "k3": [11,22,33]}
dic["k3"].insert(0,18)
print(dic)

6.有如下字典,实现以下需求的内容
av_catalog = {
"欧美":{
"www.太白.com": ["很多免费的,世界最大的","质量一般"],
"www.alex.com": ["很多免费的,也很大","质量挺好"],
"oldboy.com": ["多是自拍,高质量图片很多","资源不多,更新慢"],
"hao222.com":["质量很高,真的很高","全部收费,屌丝请绕过"]
},
"日韩":{
"tokyo-hot":["质量怎样不清楚,个人已经不喜欢日韩范了","verygood"]
},
"大陆":{
"1024":["全部免费,真好,好人一生平安","服务器在国外,慢"]
}
}
1)给此 ["很多免费的,世界最大的","质量一般"]列表第二个位置插入一个 元素:'量很大'。

av_catalog["欧美"]["www.太白.com"].insert(1,'量很大')
print(av_catalog)

2)将此 ["质量很高,真的很高","全部收费,屌丝请绕过"]列表的 "全部收费,屌丝请绕过" 删除。

av_catalog["欧美"]["hao222.com"].pop()
print(av_catalog)

3)将此["质量怎样不清楚,个人已经不喜欢日韩范了","verygood"]列表的 "verygood"全部变成大写。

av_catalog["日韩"]["tokyo-hot"][-1] = av_catalog["日韩"]["tokyo-hot"][-1].upper()
print(av_catalog)

4)给 '大陆' 对应的字典添加一个键值对 '1048' :['一天就封了']

av_catalog["大陆"]['1048'] = ['一天就封了']
print(av_catalog)

5)删除这个键值对:"oldboy.com": ["多是自拍,高质量图片很多","资源不多,更新慢"]

av_catalog["欧美"].pop("oldboy.com")
print(av_catalog)

6)给此["全部免费,真好,好人一生平安","服务器在国外,慢"]列表的第一个元素,加上一句话:'可以爬下来'

av_catalog["大陆"]["1024"].insert(0,'可以爬下来')
print(av_catalog)

7.请循环打印k2对应的值中的每个元素。
info = {
'k1':'v1',
'k2':[('alex'),('wupeiqi'),('oldboy')],
}

info = {
'k1':'v1',
'k2':[('alex'),('wupeiqi'),('oldboy')],
}
for i in info["k2"]:
    print(i)

8.有字符串"k: 1|k1:2|k2:3 |k3:4" 处理成字典 {'k':1,'k1':2....}
写代码

s = "k: 1|k1:2|k2:3 |k3 :4"
s = s.split("|")
k = ""
v = 0
dic = {}
# s = dict(s)
for i in s:
    i = i.replace(" ","").split(":")
    a,b = i
    dic[a] = b
print(dic)

9.有如下值 li= [11,22,33,44,55,77,88,99,90] ,将所有大于 66 的值保存至字典的第一个key对应的列表中,将小于 66 的值保存至第二个key对应的列表中。

li= [11,22,33,44,55,77,88,99,90]
dic = {"key1":[],"key2":[]}
for i in li:
    if i > 66:
        dic["key1"].append(i)
    elif i < 66:
        dic["key2"].append(i)
print(dic)

10.输出商品列表,用户输入序号,显示用户选中的商品

商品列表:
goods = [
{"name": "电脑", "price": 1999},
{"name": "鼠标", "price": 10},
{"name": "游艇", "price": 20},
{"name": "美女", "price": 998}]
要求:
1:页面显示 序号 + 商品名称 + 商品价格,如:
1 电脑 1999
2 鼠标 10
3 游艇 20
4 美女 998
2:用户输入选择的商品序号,然后打印商品名称及商品价格
3:如果用户输入的商品序号有误,则提示输入有误,并重新输入。
4:用户输入Q或者q,退出程序。

flag = True
print(s)
while flag:
    inp = input("请输入商品序号:")
    if inp.lower() != "q":
        if int(inp) in range(1,5):
            inp = int(inp)
            name,price= goods[inp - 1]["name"],goods[inp - 1]["price"]
            print(name,price)
        else:
            print("请重新输入")
    else:
        flag = False

11.看代码写结果(一定要先看代码在运行)
v = {}
for index in range(10):
v['users'] = index
print(v)

报错

v = {}
for index in range(10):
v['users'] = index
print(v)

{'users': 9}

百万年薪python之路 -- 字典(dict)练习的更多相关文章

  1. 百万年薪python之路 -- 字典(dict)

    1.字典(dict)-- dict关键字 字典(dict)是python中唯⼀的⼀个映射类型.他是以{ }括起来的键值对组成. ​ 字典中逗号分隔叫作一个元素 ​ 字典是无序的 ​ key必须是不可变 ...

  2. 百万年薪python之路 -- 基础数据类型的补充

    基础数据类型的补充 str: 首字母大写 name = 'alexdasx' new_name = name.capitalize() print(new_name) 通过元素查找下标 从左到右 只查 ...

  3. 百万年薪python之路 -- 模块二

    1. 序列化模块 什么是序列化呢? 序列化的本质就是将一种数据结构(如字典.列表)等转换成一个特殊的序列(字符串或者bytes)的过程就叫做序列化. 为什么要有序列化模块? 如果你写入文件中的字符串是 ...

  4. 百万年薪python之路 -- 迭代器

    3.1 可迭代对象 3.1.1 可迭代对象定义 **在python中,但凡内部含有 _ _ iter_ _方法的对象,都是可迭代对象**. 3.1.2 查看对象内部方法 该对象内部含有什么方法除了看源 ...

  5. 百万年薪python之路 -- 函数的动态参数

    1.函数的动态参数 1.1 动态接收位置参数 在参数位置用*表示接受任意参数 def eat(*args): print('我想吃',args) eat('蒸羊羔','蒸熊掌','蒸鹿尾儿','烧花鸭 ...

  6. 百万年薪python之路 -- 基础数据类型的补充练习

    1.看代码写结果 v1 = [1,2,3,4,5] v2 = [v1,v1,v1] v1.append(6) print(v1) print(v2) [1,2,3,4,5,6] [[1,2,3,4,5 ...

  7. 百万年薪python之路 -- 小数据池和代码块

    1.小数据池和代码块 # 小数据池 -- 缓存机制(驻留机制) # == 判断两边内容是否相等 # a = 10 # b = 10 # print(a == b) # is 是 # a = 10 # ...

  8. 百万年薪python之路 -- JS基础介绍及数据类型

    JS代码的引入 方式1: <script> alert('兽人永不为奴!') </script> 方式2:外部文件引入 src属性值为js文件路径 <script src ...

  9. 百万年薪python之路 -- MySQL数据库之 Navicat工具和pymysql模块

    一. IDE工具介绍(Navicat) 生产环境还是推荐使用mysql命令行,但为了方便我们测试,可以使用IDE工具,我们使用Navicat工具,这个工具本质上就是一个socket客户端,可视化的连接 ...

随机推荐

  1. C. Anadi and Domino

    题目链接:http://codeforces.com/contest/1230/problem/C C. Anadi and Domino time limit per test: 2 seconds ...

  2. [Spark] 04 - HBase

    BHase基本知识 基本概念 自我介绍 HBase是一个分布式的.面向列的开源数据库,该技术来源于 Fay Chang 所撰写的Google论文“Bigtable:一个结构化数据的分布式存储系统”. ...

  3. 使用python发邮件(qq邮箱)

    今天打算用QQ邮箱作为示例使用的邮箱,其他邮箱基本操作一样. 第一步:首先获取QQ邮箱授权码 1.进入QQ邮箱首页,点击设置,如图, 2.然后点击账户 3.拉到这个地方,开启POP3/SMTP服务服务 ...

  4. spring基础学习01

    spring基础 Spring是一个开放源代码的设计层面框架,他解决的是业务逻辑层和其他各层的松耦合问题,因此它将面向接口的编程思想贯穿整个系统应用 IOC控制反转 把创建对象和维护对象之间的关系权利 ...

  5. tomcat配置目录及安装说明

    1.升级jdk版本 java -version 查看当前java版本 上传最新版jdk tar xf jdk-8u191-linux-x64.tar.gz 解压jdk到当前下 mv jdk1.8.0_ ...

  6. ubuntu13 eclipse菜单栏失效解决

    使用ubuntu13安装完eclipse和myeclipse后发现菜单栏单击时不显示下拉框只能通过快捷键显示. 百度了一下,找到以下解决办法. 打开终端运行下面的命令,打开eclipse后可正常显示菜 ...

  7. 根据vue-cli手摸手实现一个自己的脚手架

    故事背景 身为一个入门前端七个月的小菜鸡,在我入门前端的第一天就接触到了vue,并且死皮赖脸的跟他打了这么久的交到,还记得第一次用vue init webpack 这句命令一下生成一个模板的时候那种心 ...

  8. 设计模式的七大原则(Java)

    一.OOP三大基本特性 OOP 面向对象程序设计(Object Oriented Programming)作为一种新方法,其本质是以建立模型体现出来的抽象思维过程和面向对象的方法.模型是用来反映现实世 ...

  9. 移动端适配(手机端rem布局详解)

    1. 问题的引出 如果html5要适应各种分辨率的移动设备,应该使用rem这样的尺寸单位,同时给出了一段针对各个分辨率范围在html上设置font-size的代码: html{font-size:10 ...

  10. Navicat使用常见的两个问题及解决方法,提高开发效率

    Navicat使用常见问题 在我们日常开发过程中,一般不会直接使用命令行来操作 MYSQL 数据库,而会选择一些图形化界面去帮助我们来进行此类操作,常用的有:SQLyog(Logo也是小海豚),Nav ...