1.字典
# 基础数据类型
# bool int float str list tuple dict set
# list dict set 可变数据类型
# bool int float str tuple 不可变数据类型
# 1.字典 dict
# dict_data={key: value, key1: value1}
# 1,符号以大括号表示
# 2,数据是以键值对出现的 键值中间用冒号连接
# 3,key的值必须是不可变类型,key是唯一的
print('1.字典')
# 定义一个空字典
dict_data = {}
print(dict_data)
print(type(dict_data))
# 定义一个有数据的字典
# key是不可变数据类型
# value可以是任何数据类型
# key值重复时,后面的键值对会覆盖前面的键值对
dict_data = {'小明': 20, '小明': 18}
print(dict_data)
# 字典是没有索引的 无序的
# 因为没有索引,所以才没有顺序
# 字典可以根据key获取value
dict_data = {'小明': 20, '小芳': {'age': 18, 'gender': '女'}}
print(dict_data['小芳'])
# 2.字典增加数据
print()
print('2.字典增加数据')
dict_data = {'小明': 20}
dict_data['小芳'] = 18
print(dict_data)
# 3.字典修改数据
# 原理:相当于增加数据,但是key值重复
# key值重复时,后面的键值对会覆盖前面的键值对
print()
print('3.字典修改数据')
dict_data = {'小明': 20}
dict_data['小明'] = {'age': 18, 'gender': '女'}
print(dict_data)
# 增加与修改的区分
# 当数据不存在就增加 当数据存在就是修改
# 4.字典删除数据
print()
print('4.字典删除数据')
dict_data = {'小明': 20}
del dict_data['小明']
print(dict_data)

2.字典的操作方法
(1)压缩和解包
# 压缩
# 当多个数据赋值给一个变量时,会默认为元组
# 压缩多个数据到一个变量里面,以元组的形式存储
print()
print('压缩和解包')
a = 'name', 18 # 元组
print(a) # ('name', 18)
# 解包
name, age = a
print(name, age) # 解包
(2)get()
# get(key,None)
# 获取一个数据,如果存在就返回对应的value 不存在就返回None
# None 是可以改变的,当不存在是返回这个位置的数据,默认为None
print()
print('get()')
dict_data = {'小明': 20}
print(dict_data.get('小明')) # 20
print(dict_data.get('666')) # None
print(dict_data.get('666', False)) # False
print(dict_data.get('666', 555)) # 555

(3)pop()和popitem()
# pop()
# 删除指定key的数据
print()
print('pop()')
dict_data = {'小明': 20}
dict_data.pop('小明') # 删除指定key的数据
print(dict_data)
# popitem()
# 删除字典的最后一个数据
print()
print('popitem()')
dict_data = {'小刚': 15, '小明': 20, '小芳': 18}
dict_data.popitem()
print(dict_data)

(4)update()
# update(字典) 更新
# 相当于列表的extend()
print()
print('update()')
dict_data = {'小刚': 15, '小明': 20}
dict_data.update({'小芳': 18}) # 小括号里面是字典!
print(dict_data)

(5)keys() values() items()
# keys()
# 获取字典中的所有key 并存放到一个dict_keys对象里面
print()
print('keys()')
dict_data = {'小刚': 15, '小明': 20}
print(dict_data.keys())
print(type(dict_data.keys()))
print(list(dict_data.keys())) # 可以强转为列表
for i in dict_data.keys():
print(i)
# values()
# 获取字典中的所有value
print()
print('values()')
dict_data = {'小刚': 16, '小明': 20}
print(dict_data.values())
print(type(dict_data.values()))
print(list(dict_data.values())) # 可以强转为列表
for i in dict_data.values():
print(i)
# items()
print()
print('items()')
dict_data = {'小刚': 18, '小明': 20}
print(dict_data.items())
print(type(dict_data.items()))
print(list(dict_data.items())) # 可以强转为列表
for i in dict_data.items():
print(i)
print(list(i)) # 强转为列表
for i in dict_data.items():
print(i[0], i[1])
for name, age in dict_data.items(): # 解包
print(name, age)

3.集合
# 集合 set
# set_data = {数据,数据,数据,...}
# 集合是无序的,唯一的(数据不能重复)
# 集合没有索引和key
# '' [] {} () 定义空的数据
# str() list() dict() tuple()
# 定义一个空的集合
set_data = set()
print(type(set_data))
print(set_data)
# 无序的
print()
set_data1 = {100, 200, 300}
print(set_data1) # 是无序的!
# 唯一的
# 可以去除重复的数据
print()
set_data = {1, 2, 3, 4}
print(set_data) # {1, 2, 3, 4}
set_data = {1, 2, 3, 4, 4}
print(set_data) # {1, 2, 3, 4} 和上一个一样
# add() 增加数据
print()
set_data = {1, 2, 3, 4}
set_data.add(100)
print(set_data)
# remove() 删除数据
print()
set_data = {1, 2, 3, 4}
set_data.remove(2) # 删除数据2
print(set_data)

4.今日作业
# 今日作业
"""
本次考试张三59分,李四80,
王五99分,小宋56分,
请使用字典来表达此数据结构,
并筛选出来不及格的同学及分数
"""
print('今日作业')
name_score = {'张三': 59, '李四': 80,
'王五': 99, '小宋': 56} # 创建字典存储数据
for name, score in name_score.items(): # 解包
if score < 60: # 判断是否不及格
print(name, score)

Original: https://www.cnblogs.com/qc2012/p/16926644.html
Author: 落落呀
Title: python中的字典和集合
相关阅读
Title: 如何在conda下创建虚拟环境,以及如何在虚拟环境中安装pytorch
文章目录
前言
由于一直将tensorflow框架用于深度学习,最近的项目需要使用pytorch框架,由此需创建一个新的虚拟环境供自己学习。
本文是在windows环境下使用miniconda实现虚拟环境的搭建。
miniconda与anaconda的使用方法一致,且内存空间占用较小。
创建conda虚拟环境
新建虚拟环境
在开始界面中打开miniconda命令行

输入命令
conda create -n 虚拟环境的名字 python的版本
例如:conda create -n pytorch-py3.7 python=3.7
可能出现的错误:
CondaValueError: The target prefix is the base prefix. Aborting.
是由于没有将命令参数写对,一定要有-n
激活虚拟环境
创建虚拟环境后,您需要激活它
[En]
After you have created the virtual environment, you need to activate it

conda activate 虚拟环境名称
退出此虚拟环境
conda deactivate 虚拟环境名称
删除虚拟环境
conda remove -p path --all
conda remove -n 虚拟环境名称 --all
例如:
conda remove -p D:\miniconda\envs\pytorch1.15-py3.7 –all
conda remove -n pytorch1.15-py3.7 –all

输入命令以在删除后查看所有虚拟环境
[En]
Enter the command to view all virtual environments after deletion
conda env list

如果之前没有虚拟环境,则删除成功。
[En]
If there is no previous virtual environment, the deletion is successful.
如果要重命名您的虚拟环境,您只能克隆该环境,然后创建一个新的虚拟环境,然后删除旧的虚拟环境。
[En]
If you want to rename your virtual environment, you can only clone the environment, then create a new virtual environment, and delete the old virtual environment.
安装pytorch
官网查询下载信息
最新的版本:https://pytorch.org/get-started/locally/
以往的版本 https://pytorch.org/get-started/previous-versions/
找到您需要下载的版本(图1.7.0)
[En]
Find the version you need to download (figure 1.7.0)
如是os系统则:

如是linux或者windows系统则

windows系统只有cpu版本的则复制最后一行代码至miniconda命令行
conda install pytorch==1.7.0 torchvision==0.8.0 torchaudio==0.7.0 cpuonly -c pytorch
下载完成后输入命令查看环境所有package
conda list

在pycharm中添加该虚拟环境
点开设置到python解释器,点开设置图标,选择show all

点击加号图标,找到刚刚创建虚拟环境路径下的python.exe文件,添加。


返回到pycharm主界面右下角的python解释器,看到下图,则完成配置。

; 总结
- 注意pytorch版本与电脑系统之间的关系
- 虚拟环境的搭建如出现问题,可以重新搭建一个新的环境,不会破坏其本机系统的环境,这也是anaconda的一个很大的优势。
Original: https://blog.csdn.net/hu_yinghui/article/details/126281739
Author: 快乐小胡!
Title: 如何在conda下创建虚拟环境,以及如何在虚拟环境中安装pytorch
原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/371404/
转载文章受原作者版权保护。转载请注明原作者出处!