首页 > 其他分享 >附加篇 函数经典模块

附加篇 函数经典模块

时间:2024-07-22 19:54:26浏览次数:11  
标签:函数 os 附加 模块 print path txt data datas

1.open函数使用

 在Python中,open() 函数用于打开文件,并返回一个文件对象,可以用于读取或写入文件。

f = open("./44.函数的参数.py", mode='r', encoding="utf8")
# 是否可读
#print(f.readable(), f.writable())
# 读取整个文件  返回字符串
content = f.read()
print(content, type(content))

#读取一行 返回字符串
line = f.readline()
print(line, type(line))

# 以字符串的形式读取所有行 并且将结果放入列表
lines = f.readlines()
print(lines)

2.Json与pickle

 要了解json与pickle首先需要了解两个概念序列化与非序列化,序列化就是将python数据结构转换为字符串。反序列化就是将字符串转换为python数据结构方便解析。

使用标准库中的 json 模块来处理JSON数据,可以将Python数据结构(字典、列表等)转换为JSON格式的字符串,也可以将JSON格式的字符串解析为Python数据结构。

import json
datas = {
    "user": [
        {"id": 10, "un": "admin", "pwd": "123456"}
    ],
    "student": [],
    "v": None
}
str 函数转换None时效果不好
datas_str = str(datas)
dumps 可以将None序列化为null 所有编程语言都识别
datas_str = json.dumps(datas)
with open("./data.txt", "w") as f:
    f.write(datas_str)


直接将obj序列化到文件
with open("./data.txt", "w") as f:
    json.dump(datas, f)


with open("./data.txt", "r") as f:
    content = f.read()
    # print(content, type(content))
    datas = json.loads(content)
    # print(datas, type(datas))
    first_user = datas["user"][0]
    print(first_user.get("un"), first_user.get("pwd"))


with open("./data.txt", "r") as f:
    datas = json.load(f)
    first_user = datas["user"][0]
    print(first_user.get("un"), first_user.get("pwd"))

 pickle是Python特有的序列化模块,它可以将Python对象序列化为字节流,并能在需要时将字节流反序列化为Python对象。

import pickle

data = {
    "id": 101,
    "name": "马云",
    "address": ["北京", "杭州", "上海"]
}

data_bytes = pickle.dumps(data)
with open("data2.txt", "wb") as f:
    f.write(data_bytes)


with open("data2.txt", "wb") as f:
    pickle.dump(data, f)


with open("./data2.txt", "rb") as f:
    content = f.read()
    data = pickle.loads(content)
    print(data, type(data), data["address"][2])


with open("./data2.txt", "rb") as f:
    data = pickle.load(f)
    print(data, type(data), data["address"][2])

3.Os模块

 os 模块是Python中一个非常常用的标准库模块,它提供了许多与操作系统交互的功能。主要用途包括文件和目录操作、进程管理、环境变量操作。

import os
print(os)
print(os.curdir)#当前路径
print(os.pardir)#上级路径
print(os.listdir("f:\\Program"))#当前路径下文件信息
os.mkdir("f:\\Program\\2407")#创建文件夹
os.rmdir("f:\\Program\\2407")#删除文件夹
print(os.cpu_count())#cpu核心数
print(os.path.exists("f:\\Program\\hello.txt"))#路径或者文件是否存在

print(os.path.isfile("f:\\Program\\hello.txt"))#是否为文件
print(os.path.isdir("f:\\Program"))#是否为路径
print(os.path.split("f:\\Program\\ab\\bc\\hi.txt"))#分割最后一部分和前面路径

path = os.path.join("f:", "Program", "ab", "bc")#将多个部分组合成一个路径
print(os.path.abspath(path))#绝对路径
print(os.path.dirname(path))#当前路径的父路径路径名

print(os.path.dirname(__file__), os.path.abspath(os.curdir))#获取当前文件

标签:函数,os,附加,模块,print,path,txt,data,datas
From: https://blog.csdn.net/2301_78270736/article/details/140617791

相关文章

  • 特别篇 函数基础
    1.函数目的 函数的主要目的是提高代码的模块性和重用性。defadd_numbers(a,b):"""Thisfunctiontakestwonumbersasinputandreturnstheirsum."""returna+b#调用函数并打印结果result=add_numbers(3,5)print("Thesumof3and5......
  • 【Python datetime模块精讲】:时间旅行者的日志,精准操控日期与时间
    当然,让我们深入探讨Python的datetime模块,详细解释其功能和用法。Pythondatetime模块:时间旅行者的日志在编程中,日期和时间的处理是一个常见但复杂的问题。幸运的是,Python的datetime模块为我们提供了一套全面的解决方案。这个模块不仅包括日期和时间的基本表示,还提供......
  • Python学习—函数篇 面面俱到,细致讲解
    目录1.函数目的2.函数定义3.函数的调用4.函数的形参,实参5.函数的返回值1.返回一个值2.返回多个值3.没有返回值4.返回None6.函数的参数类型1.必需参数2.关键字参数3.默认参数4.可变参数5.关键字可变参数7.匿名函数基本语法示例1.函数目的在编程中,定......
  • EXCEL初级入门--(第四章 函数进阶学习)-中
    文章目录(十四)MatchVlookup应用对比Match(十五)IndexMatch多条件应用案例Index(十六)IndexMatch数组嵌套IndexMatch(十七)唯一Subtotal唯一的筛选函数Subtotal(十八)Sumproduct函数应用Sumproduct(十九)条件求和函数1、sum2、sumif3、sumifs(二十)条件计......
  • 定制化智能:Mojo模型与自定义损失函数的深度融合
    定制化智能:Mojo模型与自定义损失函数的深度融合在机器学习领域,损失函数是衡量模型预测值与实际值差异的关键指标,它直接影响到模型训练的效果和最终性能。Mojo模型,作为一种高效的模型部署方式,其对自定义损失函数的支持是实现高级机器学习应用的重要特性。本文将详细探讨Mojo......
  • 20-c语言main函数参数`argc` 和 `argv[]` 解析
    argc和argv[]解析argc和argv[]是main函数的参数,用于处理命令行参数。一、示例命令行调用./a.out123345解释:./a.out是程序名,也是第一个参数。123和345是运行时传递的额外参数。二、main函数定义intmain(intargc,charconst*argv[]){re......
  • MySQL 学习笔记 基础(DQL,DCL,函数)
    SQL-DQL SQL-DQL-介绍DQL英文全称是DataQueryLanguage(数据查询语言),用来查询数据库中表的记录。查询关键字:SELECT SQL-DQL-语法SELECT字段列表FROM表名列表WHERE条件列表GROUPBY分组字段列表HAVING分组后条件列表ORDERBY排序字段......
  • Oracle 到 MySQL 函数替换方案汇总
    常用函数和语法转换  NVL函数Oracle语法:NVL(COUNT(*),0)MySQL语法:IFNULL(COUNT(*),0) 转字符串 Oracle语法:to_char(字段)MySQL语法:CONVERT(字段,CHAR) Rownum递增 Oracle语法:SELECTrownumnumFROMSYS_ENUMMySQL语法:SELECT(@i:=@i......
  • Verilog程序模块最详细的说明-实现流水灯
    文章目录前言一、Verilog注释二、Verilog关键字三、Verilog模块1.Verillog的基本设计单元是**"模块"(block)**2.一个模块是由两部分组成,一部分是描述接口,另一部分描述逻辑功能.3.每个Verilog模块包括4个主要部分:4.举例-流水灯5.功能定义部分有三种方法:6.模块的调用......
  • python解释器源码函数调用分析
    1、编译python代码1.1python代码test.py1defftest():2x=33ftest()1.2编译工具disass_py.py#-*-coding:utf8-*-importdisimportsysdefdisassemble_file(file_path):withopen(file_path,'r')asfile:source_code=file.read()......