Pytho字典(dict)类型

pytho将两个key值相同的字典对应的values拼接 举例1: dict1 = {"a": "1", "b": "2"} dict2 = {"a": "3", "b": "4"} x = [str(i) + '/' + str(j) for i, j in zip(list(dict1.values()), list(dict2.values()))] z = dict(zip(list(dict1.keys()), x)) print(z) 输出: {'a': '1/3', 'b': '2/4'} 举例2: dict1 = {"a": 1, "b": 2 阅读详情

Day 07 字典类型

1.字典(dict)

字典是一个无需、键不重复、元素只能是键值对的可变的容器.

data = {"a":1,"b":2}
  • 容器
  • 元素必须键值对
  • 键不重复,重复会被覆盖
data = {"a":1,"b":1}
print(data)

#{'a': 2}
  • 无序(在Python3.6+字典就是有序了,之前的字典都是无序)

1.1 定义

v = {}
v1 = dict()
data = {"a":1,"b":2}
info = {
    "name":"Ken",
    "age":24,
    "hobby":["computer","music"]
}

字典中对键值得要求:

  • 键:必须可哈希。目前为止学到的可哈希的类型: int/bool/str/tuple,不可哈希的类型:list/set/dict。
  • 值:任意类型。
data_dict = {
    "ken":24
     True:5
    123:5
   (11,22,33):5
    
}
  • 特别的如下:
data_dict = {
    1: 1,
    True: 1

}
print(data_dict)
#{1: 1}
  • 一般情况下当我们想要表示一组固定信息时,用字典可以更加的直观,例如:
#用户列表
user_list = {"admin":123,"root":111}
user_list = [{"name":"adimin","pwd":123},{"name":"root","pwd":123}]

1.2 独有功能

1.2.1 获取值

info = {
    "name":"Ken",
    "age":24,
    "hobby":["computer","music"]
}

data = info.get("name")
print(data)
#Ken
data1 = info.get("email")#对于不存在的键,get最终得到的是None
print(data1)
#None
#案例
user_list = {
    "Ken" : "123",
    "Pitter":321
}
username = input("请输入用户名:")
password = input("请输入密码:")
mid_value = user_list.get(username)#获取对应键所对应的值
if mid_value == None:
    print("用户不存在!")
else:
    #print(mid_value)
    if password == mid_value:
        print("Login Successful!")
    else:
        print("Login failur!")

1.2.3 获取所有的键

info = {
    "name":"Ken",
    "age":24,
    "hobby":["computer","music"]
}
data = info.keys()
#dict_keys(['name', 'age', 'hobby'])
  • 在Python2中字典.keys()直接获取到的是列表,而Python3中返回的是高仿列表,这个高仿的列表可以被循环显示。
  • 可以判断键是否存在
info = {
    "name":"Ken",
    "age":24,
    "hobby":["computer","music"]
}
for item in info.keys():
    print(item)

1.2.4 获取所拥有的值

info = {
    "name":"Ken",
    "age":24,
    "hobby":["computer","music"]
}
data = info.values()
print(data1)
#dict_values(['Ken', 24, ['computer', 'music']])
for item in info.values():
    print(item)
    
#Ken
#24
#['computer', 'music']

1.2.5 所有的键值

for key,value in info.items():
    print(key,value)
#name Ken
#age 24
#hobby ['computer', 'music']

1.2.6 设置值

dict_list = {"name":"张三","Tall":180}
dict_list.setdefault("age",24)
print(dict_list)
dict_list.setdefault("name","GG")
print(dict_list)

#{'name': '张三', 'Tall': 180, 'age': 24}
#{'name': '张三', 'Tall': 180, 'age': 24}

由上我们可以知道:

  • 通过setdefault对字典的键值对进行添加
  • 当我们设置的键值对的键与字典中原有的键值对中的键相同时默认不在添加设置的值

1.2.7 更新键值对

dict_list = {"name":"张三","Tall":180}
print(dict_list)
dict_list.update({"name":"李四","Tall":182,"age":18})
print(dict_list)

#{'name': '张三', 'Tall': 180}
#{'name': '李四', 'Tall': 182, 'age': 18}

通过观察上方代码我们可以知道:

  • 字典通过update()更新键值对
  • 更新时,通过输入与原字典内相同键的不同值的键值对的方式来更新
  • 若更新的键值对里存在元字典内不存在的键则自动添加到字典内

1.2.8 移除指定键值对

dict_list.update({"name":"李四","Tall":182,"age":18})

dict_list.pop("age")
print(dict_list)
#{'name': '张三', 'Tall': 180}

观察代码可知:

  • 字典通过pop()移除指定键值对
  • 移除时只需示出键即可实现

1.2.9 按照顺序移除键值对

dict_list.update({"name":"李四","Tall":182,"age":18})
print(dict_list)

dict_list.popitem()
print(dict_list)

dict_list.popitem()
print(dict_list)

dict_list.update({"age":18})
print(dict_list)
dict_list.popitem()
print(dict_list)


# {'name': '李四', 'Tall': 182, 'age': 18}
# {'name': '李四', 'Tall': 182}
# {'name': '李四'}
# {'name': '李四', 'age': 18}
# {'name': '李四'}

观察可知:

  • python通过popitem()进行对键值对的按顺序删除
  • 删除时按照从后往前的顺序,也可以理解为后进先出

另外:

  • py3.6后,popitem移除最后的值。
  • py3.6之前,popitem随机删除。
#练习题
header = ['股票名称', '当前价', '涨跌额']
stock_dict = {
    'SH601778': ['中国晶科', '6.29', '+1.92'],
    'SH688566': ['吉贝尔', '52.66', '+6.96'],
    'SH688268': ['华特气体', '88.80', '+11.72'],
    'SH600734': ['实达集团', '2.60', '+0.24']
}

for key,value in stock_dict.items():
    #print(key,value)
    text_list = []
    for index in range(len(value)):
        text = "{}:{}".format(header[index],value[index])
        text_list.append(text)
    data = "、".join(text_list)
    #print(data)
    result = "{},{}.".format(key,data)
    print(result) 

# SH601778,股票名称:中国晶科、当前价:6.29、涨跌额:+1.92.
# SH688566,股票名称:吉贝尔、当前价:52.66、涨跌额:+6.96.
# SH688268,股票名称:华特气体、当前价:88.80、涨跌额:+11.72.
# SH600734,股票名称:实达集团、当前价:2.60、涨跌额:+0.24.

1.3 公共功能

1.3.1 求并集(python3.9新加入)

v1 = {"a":1,"b":2}
v2 = {"b":21,"c":2}
v3 = v1 | v2
print(v3)

#{'a': 1, 'b': 21, 'c': 2}
  • 当进行并集操作时,遇到相同键时,会将相同键的值更新,并生成新的字典

1.3.2 长度

v1 = {"a":1,"b":2}
v2 = {"b":21,"c":2}
v3 = v1 | v2
print(v3)

print(len(v3))
#3

1.3.4 是否包含

dict_list = {'name': '李四', 'Tall': 182, 'age': 18}

v1 = "age" in dict_list
print(v1)

v2 = "age" in dict_list.keys()
print(v2)

#True
True

1.3.5 索引(键)

不同于元组和列表,字典的索引是键

dict_list = {'name': '李四', 'Tall': 182, 'age': 18}

print(dict_list['name'])
print(dict_list['Tall'])
print(dict_list['age'])

#李四
#182
#18

1.3.6 根据键 添加或修改 值

dict_list = {'name': '李四', 'Tall': 182, 'age': 18}

dict_list['name'] = "王二麻子"
dict_list["Hobby"] = {"football","Music"}
print(dict_list)
#{'name': '王二麻子', 'Tall': 182, 'age': 18, 'Hobby': {'Music', 'football'}}

由上我们可以观察到:

  • 我们通过键来进行值的确定
  • 当我们更新的值的键存在时,则会更新原来的键值对中的值
  • 若不存在就添加键值对

1.3.7 for循环

由于字典也属于是容器,内部可以包含多个键值对,可以通过循环对其中的:键、值、键值进行循环;

dict_list = {'name': '王二麻子', 'Tall': 182, 'age': 18, 'Hobby': {'Music', 'football'}}

for item in dict_list:
    print(item)
# name
# Tall
# age
# Hobby

1.3.8 字典的删除

dict_list = {'name': '王二麻子', 'Tall': 182, 'age': 18, 'Hobby': {'Music', 'football'}}

#del dict_list['name']
#data = dict_list.pop("name")
print(dict_list)
print(data)
#若不存在便会报错
#del dict_list['name']
# KeyError: 'name'
#data = dict_list.pop("name")
#KeyError: 'name'

1.4 转换

v1 = {{"k1","aa"},{"k2","bb"}}
v2 = {("k1","aa"),("k2","bb")}
print(dict(v1))
print(dict(v2))

#{'k1': 'aa', 'k2': 'bb'}
#{'k1': 'aa', 'k2': 'bb'}
dict_list = {'name': '王二麻子', 'Tall': 182, 'age': 18, 'Hobby': {'Music', 'football'}}
print(list(dict_list))
print(list(dict_list.keys()))
print(list(dict_list.values()))
print(list(dict_list.items()))

# ['name', 'Tall', 'age', 'Hobby']
# ['name', 'Tall', 'age', 'Hobby']
# ['王二麻子', 182, 18, {'football', 'Music'}]
# [('name', '王二麻子'), ('Tall', 182), ('age', 18), ('Hobby', {'football', 'Music'})]

1.5 其他

1.5.1存储原理

在这里插入图片描述

1.5.2 嵌套

  • 字典的键必须可哈希。(list/set/dict不可哈希)
  • 字典的值可以是任何类型
  • 字典的键必须可哈希。(list/set/dict不可哈希)
  • 字典的键和集合的元素在遇到布尔值和1、0时,需注意重复的情况。
  • 元组的元素不可以被替换。
dic = {
    "name ": '汪峰',
    'age': 48,
    'wife': [{'name': '国际章', 'age': 38}, {'name': '李杰', 'age': 48}],
    'children': ['第一个娃', '第二个娃']
}

# 1,获取汪峰的妻子名字
d1 = dic['wife'][0]['name']
print(d1)
# 2.获取汪峰的孩子们
d2 = dic['children']
print(d2)
# 3。获取汪峰的第一个孩子
d3 = dic['children'][0]
print(d3)
# 4。汪峰的媳妇姓名变更为章子怡
dic['wife'][0]["name"] = "章子怡"
print(dic)
# 5。汪峰再娶一任妻子
dic["wife"].append({"name": "铁锤", "age": 19})
print(dic)
# 6。给汪峰添加一个爱好:吹牛逼
dic['hobby'] = '吹牛逼'
print(dic)
# 7.删除汪峰的年龄
del dic['age']
#dic.pop('age')
print(dic)

# 国际章
# ['第一个娃', '第二个娃']
# 第一个娃
# {'name ': '汪峰', 'age': 48, 'wife': [{'name': '章子怡', 'age': 38}, {'name': '李杰', 'age': 48}], 'children': ['第一个娃', '第二个娃']}
# {'name ': '汪峰', 'age': 48, 'wife': [{'name': '章子怡', 'age': 38}, {'name': '李杰', 'age': 48}, {'name': '铁锤', 'age': 19}], 'children': ['第一个娃', '第二个娃']}
# {'name ': '汪峰', 'age': 48, 'wife': [{'name': '章子怡', 'age': 38}, {'name': '李杰', 'age': 48}, {'name': '铁锤', 'age': 19}], 'children': ['第一个娃', '第二个娃'], 'hobby': '吹牛逼'}
# {'name ': '汪峰', 'wife': [{'name': '章子怡', 'age': 38}, {'name': '李杰', 'age': 48}, {'name': '铁锤', 'age': 19}], 'children': ['第一个娃', '第二个娃'], 'hobby': '吹牛逼'}

Temporal Fusion Transformer(TFT)与扩散模型融合:时间序列预测新范式 本文探讨了Temporal Fusion Transformer(TFT)与扩散模型融合的时间序列预测新范式。该融合方案利用TFT强大的特征提取与可解释性,为扩散模型提供精准的“导航图”,从而在噪声数据中实现鲁棒预测,并原生支持不确定性量化,输出完整的概率分布与置信区间,为金融、能源等领域的风险决策提供更可靠的依据。 阅读详情

相关推荐

银河麒麟V10 SP3下NFS客户端挂载失败?5个常见问题排查与修复

本文针对银河麒麟V10 SP3系统中NFS客户端挂载失败的常见问题,提供了5个实战排查方案。从基础服务状态检查到防火墙配置、版本兼容性、/etc/fstab设置及权限映射,详细解析了问题根源与解决方案,帮助用户快速恢复NFS文件共享功能。

weixin_42525005的博客 363

pytorch 状态字典:state_dict

pytorch 中的 state_dict 是一个简单的python的字典对象,将每一层与它的对应参数建立映射关系.(如model的每一层的weights及偏置等等) (注意,只有那些参数可以训练的layer才会被保存到模型的state_dict中,如卷积层,线性层等等) 优化器对象Optimizer也有一个state_dict,它包含了优化器的状态以及被使用的超参数(如lr, momentu...

wzg2016的博客 3万+

microblaze之Video Processing Subsystem调试误区

内容:总结video processing subsystem调试中遇到的问题,以及在解决问题中的思路方法论,引为前车之鉴。 1,我的目的是希望采用vps中的scaler模块对图像进行拉伸缩小。IP的配置如下: 2,整个系统的框架图如下,仅比上期的内容增加了scaler模块,如下: 3,查手册,可以知道这个scaler only组件分成了hscale,vscale和GPIO,其中GPIO是控制上下游stream流控设备复位用,暂时忽略。 hscale和vscale的寄存器空间如下,主要关注图

YDY5659150的专栏 3555

【PyTorch】教程:torch.nn.ModuleDict

将所有的子模块放到一个字典中。ModuleDict可以像常规Python字典一样进行索引,但它包含的模块已正确注册,所有Module方法都可以看到。ModuleDict是一个字典。– 一个()映射(字典)或者可迭代的键值对。clear移除ModuleDict里所有的子模块。items返回 ModuleDict 键值对的迭代器keys返回ModuleDict键的可迭代项。返回: Iterable[str]popkey (str)– 从ModuleDict弹出的键返回:Module。

2371

INS/伪距组合导航(1)

星间单差GNSS/INS伪距紧组合

u014430081的博客 874

用Python玩转Iris数据集:从数据加载到可视化分析的完整指南

本文提供了使用Python处理Iris数据集的完整指南,涵盖数据加载、探索性分析、特征工程和可视化呈现等关键步骤。通过Pandas、NumPy、Matplotlib和Seaborn等工具,读者将学习如何从零开始完成一个机器学习项目的数据分析流程,掌握数据科学的核心技能。

j2k3l4的博客 850

【pytorch】torch.nn.Module.load_state_dict详解

参考博客: https://blog.youkuaiyun.com/weixin_40522801/article/details/106563354 https://blog.youkuaiyun.com/yangwangnndd/article/details/100207686 函数定义: load_state_dict(state_dict, strict=True) 作用: 使用 state_dict 反序列化模型参数字典。用来加载模型参数。将 state_dict 中的 parameters 和 buffers 复制

sazass的博客 2万+

Unity FPS射击控制系统:数据驱动的武器行为解耦方案

在Unity第一人称射击(FPS)开发中,射击系统常因输入、状态、行为耦合导致连发异常、换弹冲突与网络同步失准。其本质是缺乏对‘武器行为’(如后坐力曲线、弹药逻辑)与‘射击控制’(如输入合法性校验、冷却调度)的正交分离。本方案基于ScriptableObject实现WeaponData数据资产化,配合ShootingController状态机服务,达成输入解耦、运行时参数可调、协程受控、网络预测友好等工程目标。适用于中大型FPS项目架构升级与数据驱动转型,尤其解决Unity InputSystem与物理反馈

weixin_30536861的博客 609

关于torch框架load_state_dict失效的问题

【代码】关于torch框架load_state_dict失效的问题。

qq_58158487的博客 954

博途 V16(TIA portal V16)安装教程

本文提供了西门子TIA Portal V16软件的完整安装指南。内容包括百度网盘下载链接(提取码kv69)、详细安装步骤(关闭安全保护、典型安装设置)、授权破解方法,以及PLCSIM仿真功能的使用说明。重点演示了S7-1200 PLC程序的仿真过程,解析了仿真界面各元素功能,包括状态指示灯(RUN/STOP/ERROR)、操作按钮(RUN/STOP/MRES)和网络接口状态等。通过图文并茂的方式,完整呈现了从软件安装到PLC程序仿真的全流程操作。

lingchen1906的博客 6716

STM32F407最小系统硬件设计与CubeMX工程实践

嵌入式最小系统是MCU功能实现的物理基础,其核心涵盖供电网络、时钟架构、复位机制与调试接口四大模块。基于Cortex-M4内核的STM32F407对电源纹波、晶振稳定性及信号完整性提出严苛要求:模拟电源VDDA需<10mV纹波,HSE晶振布线须满足短距直连与匹配电容精准配置,SWD调试接口依赖50Ω阻抗控制与端接防护。这些硬件约束直接映射至STM32CubeMX配置——如RCC时钟树参数必须与实物晶振频率严格一致,GPIO模式需匹配外设电气特性(如I2C必选开漏),否则将引发通信失败或启动异常。典型应用场景

weixin_35592186的博客 173

Pytorch4——* & **的区别—tuple、list、dict

1.pytorch基础知识 1.1. def xxxxx(*args, **kwargs): 一个星号 * 作用是将tuple或者list中的元素进行unpack,分开传入,作为多个参数; 两个星号** 作用是把dict类型的数据作为参数传入。 1.2.tuple、list、dict list是一种有序的集合,可以随时添加和删除其中的元素 执行结果: # list是一种有序的集合,可以随时添加和删除其中的元素 list_1 = [1,2,3,4,5] list_1[

m0_38057941的博客 1560

智能办公助手——OpenClaw办公自动化集成(2026办公版)

OpenClaw智能办公助手是一款集成任务管理、文档处理等功能的办公自动化系统。该系统采用Python实现,核心功能包括:1)任务管理系统,支持任务增删改查、状态跟踪和统计报表生成;2)文档智能助手,提供文档处理能力。任务管理模块具备优先级设置、状态变更、时间记录等功能,并能生成包含完成率等指标的任务报告。该系统旨在通过自动化办公流程提升工作效率,减少重复性工作。开发者可利用这些模块构建完整的智能办公解决方案。

一键难忘的博客 349

【Python数据类型-字典】无序序列&可变数据类型

用{}表示创建空字典 dict = {}创建非空字典,元素是键值对.其中键是不可变类型方式1: dict1 = {key1: value1, key2: value2...}方式2: dict1 = dict(obj)针对字典题型大概有以下几类:(1)过滤不符合条件的value/key,处理方法:使用items()取出所有键值对字典推导式判断/ filter结合lambda(2) 多个字典合并。

weixin_46697247的博客 305

深度学习工具包 DeepLearningToolbox

深度学习工具包Deprecation notice.-----This toolbox is outdated and no longer maintained.There are much better tools available for deep learning than this toolbox, e.g. [Theano](http://deeplearning.net/software/theano/), [torch](http://torch.ch/) or [tensorflow](http://www.tensorflow.org/)I would suggest you use one of the tools mentioned above rather than use this toolbox.Best, Rasmus.DeepLearnToolbox================A Matlab toolbox for Deep Learning.Deep Learning is a new subfield of machine learning that focuses on learning deep hierarchical models of data.It is inspired by the human brain's apparent deep (layered, hierarchical) architecture.A good overview of the theory of Deep Learning theory is[Learning Deep Architectures for AI](http://www.iro.umontreal.ca/~bengioy/papers/ftml_book.pdf)For a more informal introduction, see the following videos by Geoffrey Hinton and Andrew Ng.* [The Next Generation of Neural Networks](http://www.youtube.com/watch?v=AyzOUbkUf3M) (Hinton, 2007)* [Recent Developments in Deep Learning](http://www.youtube.com/watch?v=VdIURAu1-aU) (Hinton, 2010)* [Unsupervised Feature Learning and Deep Learning](http://www.youtube.com/watch?v=ZmNOAtZIgIk) (Ng, 2011)If you use this toolbox in your research please cite [Prediction as a candidate for learning deep hierarchical models of data](http://www2.imm.dtu.dk/pubdb/views/publication_details.php?id=6284)```@MASTERSTHESIS\{IMM2012-06284, author = "R. B. Palm", title = "Prediction as a candidate for learning deep hierarchical models of data", year = "2012",}```Contact: rasmusbergpalm at gmail dot comDirectories included in the toolbox-----------------------------------`NN/` - A library for Feedforward Backpropagation Neural Networks`CNN/` - A library for Convolutional Neural Networks`DBN/` - A library for Deep Belief Networks`SAE/` - A library for Stacked Auto-Encoders`CAE/` - A library for Convolutional Auto-Encoders`util/` - Utility functions used by the libraries`data/` - Data used by the examples`tests/` - unit tests to verify toolbox is workingFor references on each library check REFS.mdSetup-----1. Download.2. addpath(genpath('DeepLearnToolbox'));Example: Deep Belief Network---------------------```matlabfunction test_example_DBNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit RBM and visualize its weightsrand('state',0)dbn.sizes = [100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);figure; visualize(dbn.rbm{1}.W'); % Visualize the RBM weights%% ex2 train a 100-100 hidden unit DBN and use its weights to initialize a NNrand('state',0)%train dbndbn.sizes = [100 100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);%unfold dbn to nnnn = dbnunfoldtonn(dbn, 10);nn.activation_function = 'sigm';%train nnopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.10, 'Too big error');```Example: Stacked Auto-Encoders---------------------```matlabfunction test_example_SAEload mnist_uint8;train_x = double(train_x)/255;test_x = double(test_x)/255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit SDAE and use it to initialize a FFNN% Setup and train a stacked denoising autoencoder (SDAE)rand('state',0)sae = saesetup([784 100]);sae.ae{1}.activation_function = 'sigm';sae.ae{1}.learningRate = 1;sae.ae{1}.inputZeroMaskedFraction = 0.5;opts.numepochs = 1;opts.batchsize = 100;sae = saetrain(sae, train_x, opts);visualize(sae.ae{1}.W{1}(:,2:end)')% Use the SDAE to initialize a FFNNnn = nnsetup([784 100 10]);nn.activation_function = 'sigm';nn.learningRate = 1;nn.W{1} = sae.ae{1}.W{1};% Train the FFNNopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.16, 'Too big error');```Example: Convolutional Neural Nets---------------------```matlabfunction test_example_CNNload mnist_uint8;train_x = double(reshape(train_x',28,28,60000))/255;test_x = double(reshape(test_x',28,28,10000))/255;train_y = double(train_y');test_y = double(test_y');%% ex1 Train a 6c-2s-12c-2s Convolutional neural network %will run 1 epoch in about 200 second and get around 11% error. %With 100 epochs you'll get around 1.2% errorrand('state',0)cnn.layers = { struct('type', 'i') %input layer struct('type', 'c', 'outputmaps', 6, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %sub sampling layer struct('type', 'c', 'outputmaps', 12, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %subsampling layer};cnn = cnnsetup(cnn, train_x, train_y);opts.alpha = 1;opts.batchsize = 50;opts.numepochs = 1;cnn = cnntrain(cnn, train_x, train_y, opts);[er, bad] = cnntest(cnn, test_x, test_y);%plot mean squared errorfigure; plot(cnn.rL);assert(er<0.12, 'Too big error');```Example: Neural Networks---------------------```matlabfunction test_example_NNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);% normalize[train_x, mu, sigma] = zscore(train_x);test_x = normalize(test_x, mu, sigma);%% ex1 vanilla neural netrand('state',0)nn = nnsetup([784 100 10]);opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samples[nn, L] = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.08, 'Too big error');%% ex2 neural net with L2 weight decayrand('state',0)nn = nnsetup([784 100 10]);nn.weightPenaltyL2 = 1e-4; % L2 weight decayopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex3 neural net with dropoutrand('state',0)nn = nnsetup([784 100 10]);nn.dropoutFraction = 0.5; % Dropout fraction opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex4 neural net with sigmoid activation functionrand('state',0)nn = nnsetup([784 100 10]);nn.activation_function = 'sigm'; % Sigmoid activation functionnn.learningRate = 1; % Sigm require a lower learning rateopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex5 plotting functionalityrand('state',0)nn = nnsetup([784 20 10]);opts.numepochs = 5; % Number of full sweeps through datann.output = 'softmax'; % use softmax outputopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex6 neural net with sigmoid activation and plotting of validation and training error% split training data into training and validation datavx = train_x(1:10000,:);tx = train_x(10001:end,:);vy = train_y(1:10000,:);ty = train_y(10001:end,:);rand('state',0)nn = nnsetup([784 20 10]); nn.output = 'softmax'; % use softmax outputopts.numepochs = 5; % Number of full sweeps through dataopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, tx, ty, opts, vx, vy); % nntrain takes validation set as last two arguments (optionally)[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');```[![Bitdeli Badge](https://d2weczhvl823v0.cloudfront.net/rasmusbergpalm/deeplearntoolbox/trend.png)](https://bitdeli.com/free "Bitdeli Badge")

IMSL CNL 7.0.0 (x86-64)Crack

IMSL CNL 7.0.0 (x86-64)Crack intel的算法库破解文件,这是C++版本的破解文件

2024年Python最全【python】密码字典生成器_pytho生成密码字典

harry-passwd-dict-creator(下简称pdc)集合了一些哈里自写的密码字典生成工具。Python崛起并且风靡,因为优点多、应用领域广、被大牛们认可。学习 Python 门槛很低,但它的晋级路线很多,通过它你能进入机器学习、数据挖掘、大数据,CS等更加高级的领域。Python可以做网络应用,可以做科学计算,数据分析,可以做网络爬虫,可以做机器学习、自然语言处理、可以写游戏、可以做桌面应用…Python可以做的很多,你需要学好基础,再选择明确的方向。

2401_84689346的博客 1389

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

pytho中list与dict

1. list列表扩展的方式有几种(或者说添加元素的方法) 2. 对["cherry", "litchi", "strawberry", "mangosteen", "pomelo", "pineapple", "pitaya", "durian"]进行默认排序对上面的列表使用第三个字母进行排序 3. dict中所有方法的使用(先写源代码再写样例)...

m0_61885578的博客 140

温度PID控制PLC程序

温度PID稳定控制程序,适用于欧姆龙PLC,对其他PLC也具有很大参考价值

Pytho 从列表中创建字典 (dict.fromkeys()的问题)

函数只是复制了列表的引用,作为默认值。如果想把值初始化为列表,并且后续会进行数据存取操作,那还是建议动动手,写个循环。问题起因:想在代码中通过已有的列表创建一个字典,但是又不想写循环,更不想手动填,所以用到了字典对象的。函数获取这些列表的地址,如果地址一样,则说明它们是同一个列表,所以操作一个就代表操作所有。如果我们的代码中也是这种简单的情况,那就没有接下来的问题了,But,不是。它们的输出结果完全一致,可见对于列表这个可变类型,所有的键值对中的值都改变了,都变成了。在我的代码中,假设我想创建的字典。

日月 847

python怎么建立字典翻译_python字典中如何创建字典

满意答案python---创建字典的方式1、用{}创建字典代码:x = {"a":"1", "b":"2"}print x输出:{'a': '1', 'b': '2'}2、用内置函数dict()(1)、入参为类似a="1"的键值对代码:x = dict(a="1", b="2")print x输出:{'a': '1', 'b': '2'}(2)、入参为一个元组,元组内部是一系列包含两个值的元组,例...

weixin_39775354的博客 1136

python怎么建立字典翻译_Python下字典创建的8种方法

Python下字典创建的几种方法记录1、创建空字典 >>> info_dict = {}>>> print(type(info_dict))2、赋值直接生成 >>> student_info = {'name': 'nock', 'age': 18, 'class': 18}>>> student_info{'name': '...

weixin_39830303的博客 434

Pytho学习_获取字典中的元素

案例:获取字典中的元素 info={"name":"胖子","age":"18","sex":"女","mei":False} print(info) print("姓名为%s"%info["name"]) print("年龄为%s"%info["age"]) print("性别为

zyl2726411159的博客 1321

python数据结构:以链表为底层原理重新实现字典dict

(PS:本人主要研究方向是java,python代码写的烂请见谅,大佬轻喷) 一、概述: 首先我们只知道,python中有几个已经实现好的数据结构,底层为链表linkList的列表list、底层为哈希表hashTable的集合set和字典dict。 这确实为我们在程序开发的过程中提供了不少的便利、但也存在一定的弊端。 以dict举个例子: 在java中有一种与dict相似的结构叫做Map,java中同一个容器可以用不同的底层来实现,Map也是如此,像下面这样: import java.util.HashMa

qq_52247089的博客 557

流程的Python 第三章:字典和集合

前言:        字典是python中唯一的映射类型,采用键值对(key-value)的形式存储数据。目录: 内容回顾 相关资料 阅读后感 正文: 一. 内容回顾 1.1 泛映射类型 Mapping和MutableMapping这两个抽象类,他们的作用是为了dict和其他类似的类型定义形式接口。1.2 字典推导 列表推导和生成器表达式的概念移植在字典上,从而使得字典推导有了以任何键值作

Teman的博客 1199

pytho

pytho 字符串格式化:求模操作符%可以用来将其他值转换为包含转换标志的字符串,对值进行不同方法的格式化,左右对齐,字段宽度精度,增加符号,左填充数字字符串方法join split istitle capitalize将值分组到一个结构,并且通过编号对其进行引用通过名字 引用值 数据结构数据类型--映射mapping字典Dictionary是...

weixin_34206899的博客 109

python list dict_python中list和dict

字典(Dictionary)是一种映射结构的数据类型,由无序的“键-值对”组成。字典的键必须是不可改变的类型,如:字符串,数字,tuple;值可以为任何python数据类型。1、新建字典2、增加字典元素:两种方法3、删除字典4、字典的方法1)get(key,default=None)返回键值key对应的值;如果key没有在字典里,则返回default参数的值,默认为None2)clear 清空字典...

weixin_39902598的博客 337

python字典类型

字典类型简介 字典(dict)是存储key/value数据的容器,也就是所谓的map、hash、关联数组。无论是什么称呼,都是键值对存储的方式。 在python中,dict类型使用大括号包围: D = {"key1": "value1", "key2": "value2", "key3": "value3"} dict对象中存储的元素没有位置顺序,所以dict不是序列,

weixin_33916256的博客 541

Python 访问字典(dictionary)中元素

访问python字典中元素的几种方式 一:通过“键值对”(key-value)访问: print(dict[key]) dict = {1: 1, 2: 'aa', 'D': 'ee', 'Ty': 45} print(dict['D']) 输出: ee dict.get(key,[default]) :default为可选项,用于指定当‘键’不存在时 返回一个默认值,如果省略,默认返回None ''' 遇到问题没人解答?小编创建了一个Python学习交流QQ群:531509025 寻找有志同道合的小伙

python学习者的博客 1万+
上一篇: Python的集合(set)类型、None类型.....
下一篇: 关于Python中的浮点(float)类型数据
Akzeptieren
博客等级 码龄8年 65粉丝 79原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值