【PyTorch入门】编程杂谈·1(文件、字典结构、字符串统计、结果保存)

🌈 个人主页:十二月的猫-CSDN博客
🔥 系列专栏: 🏀PyTorch入门宝典_十二月的猫的博客-CSDN博客

💪🏻 十二月的寒冬阻挡不了春天的脚步,十二点的黑夜遮蔽不住黎明的曙光 

目录

1. 前言

2. 编程杂谈

2.1 文件打开

2.2 文件读取

2.3 python中字典结构的读取/输出

2.3.1 全部字典数据输出:

2.3.2 遍历字典并处理列表

2.4 字符串个数统计

2.5 结果保存

3. 总结


1. 前言

本专栏【PyTorch入门】可供于入门PyTorch小白阅读使用。本专栏中的【编程杂谈】系列,专门收录猫猫在利用PyTorch写程序时遇到的和PyTorch没有产生直接关系,但是和python编程本身有关系小知识点或者编程思想,希望可以帮助到大家,同时也作为猫猫自己的编程笔记本。

2. 编程杂谈

2.1 文件打开

以读形式打开:

with open('文件地址', 'r', encoding='utf-8') as 为文件取得变量名:

例如:

with open('D:\projects\pythonProject\ChineseNLP\contents.json', 'r', encoding='utf-8') as fcc_file:

以写形式打开:

with open('文件地址', 'w', encoding='utf-8') as 为文件取得变量名:

2.2 文件读取

json格式文件读取:

json.load()

json_dict = json.load(fcc_file)

完整代码:

with open('D:\projects\pythonProject\ChineseNLP\contents.json', 'r', encoding='utf-8') as fcc_file:
    json_dict = json.load(fcc_file)

读取json文件后,会将文件转化为字典结构,在python中使用 

2.3 python中字典结构的读取/输出

字典结构为:

my_dict = {
    'name': 'Alice',
    'age': 30,
    'hobbies': ['reading', 'traveling', 'swimming'],
    'friends': {
        'best_friend': 'Bob',
        'acquaintances': ['Charlie', 'David']
    }
}

2.3.1 全部字典数据输出:

my_dict = {
    'name': 'Alice',
    'age': 30,
    'hobbies': ['reading', 'traveling', 'swimming'],
    'friends': {
        'best_friend': 'Bob',
        'acquaintances': ['Charlie', 'David']
    }
}

print(my_dict)

输出:

{
    'name': 'Alice',
    'age': 30,
    'hobbies': ['reading', 'traveling', 'swimming'],
    'friends': {
        'best_friend': 'Bob',
        'acquaintances': ['Charlie', 'David']
    }
}

2.3.2 遍历字典并处理列表

下面情况都是字典里面包含

要输出包含列表的字典,我们可以通过循环遍历字典,检查每个值的类型:

for key, value in my_dict.items():
    if isinstance(value, list):
        print(f"{key}:")
        for item in value:
            print(f"  - {item}")
    elif isinstance(value, dict):
        print(f"{key}:")
        for sub_key, sub_value in value.items():
            if isinstance(sub_value, list):
                print(f"  {sub_key}:")
                for item in sub_value:
                    print(f"    - {item}")
            else:
                print(f"  {sub_key}: {sub_value}")
    else:
        print(f"{key}: {value}")

输出

name: Alice
age: 30
hobbies:
  - reading
  - traveling
  - swimming
friends:
  best_friend: Bob
  acquaintances:
    - Charlie
    - David

字典结构的遍历方式:

for key, value in my_dict.items():

item是字典中的一个键值对,利用items拿出字典结构中所有的键值对

列表结构的遍历方式:

 for item in value:

value是一个list列表结构

2.4 字符串个数统计

需求:有如下字符串,想要统计各个字符串出现的次数

医疗报告
医疗报告
医疗报告
医疗报告
医疗报告
医疗报告
疾病治疗
疾病治疗
健康食品
疾病治疗
疾病治疗
菜谱
菜谱

代码如下:

利用Python 的 collections.Counter来实现字符串个数统计

from collections import Counter
count = Counter(strings)

输出结构:

Counter输出结构为字典结构:{key,frequency}

因此输出代码为:

for item, frequency in count.items():
    print(f"{item}: {frequency}")

对结果排序:

# 对计数结果按出现次数排序(降序)
sorted_countResult = countResult.most_common()

排序结果:列表类型 

2.5 结果保存

方法一:

对于一堆string去保存可以采用 列表+append 方法存储在变量中

# 初始化一个空列表
tags = []
tags.append(item)  # 将 item 添加到列表中

方法二:

打开一个新文件,利用write方法写入文件中

import json

with open('D:\\projects\\pythonProject\\ChineseNLP\\contents.json', 'r', encoding='utf-8') as file:
    jsonResult = json.load(file)

with open('tags.txt', 'w', encoding='utf-8') as tag_file:
    for key, value in jsonResult.items():
        if isinstance(value, dict):
            for item_key, item_value in value.items():
                if item_key == 'tags':
                    if isinstance(item_value, list):
                        for item in item_value:
                            tag_file.write(f"{item}\n")  # 每个 item 单独写入一行

3. 总结

如果想要学习更多pyTorch/python编程的知识,大家可以点个关注并订阅,持续学习、天天进步

你的点赞就是我更新的动力,如果觉得对你有帮助,辛苦友友点个赞,收个藏呀~~~

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

十二月的猫

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值