go标准库的学习-os】的更多相关文章

参考https://studygolang.com/pkgdoc 导入方式: import "os" os包提供了操作系统函数的不依赖平台的接口 一开始简单举个例子: package main import( "fmt" "os" "log" ) func main() { file, err := os.Open("test.txt") if err != nil{ log.Fatal(err) } da…
参考:https://studygolang.com/pkgdoc 概念解释: request:用户请求的信息,用来解析用户的请求信息,包括post.get.cookie.url等信息 response:服务器返回给客户端的信息 conn:用户的每次请求链接 handler:处理请求和生成返回信息的处理逻辑 该图来自https://www.sohu.com/a/208720509_99960938 下面的内容来自http://www.runoob.com/http/http-messages.h…
参考:https://studygolang.com/pkgdoc 导入方式: import "database/sql" sql包提供了保证SQL或类SQL数据库的泛用接口. 使用sql包时必须注入(至少)一个数据库驱动.相关可见go标准库的学习-database/sql/driver 1.空值 参考:https://yq.aliyun.com/articles/178898?utm_content=m_29337 当用户认为数据库中的某一列不会出现空值(即nil)而将该列设置为基本…
参考:https://studygolang.com/pkgdoc 导入方式: import "crypto/md5" md5包实现了MD5哈希算法,参见RFC 1321. Constants MD5字节块大小. MD5校验和字节数. func Sum func Sum(data []byte) [Size]byte 返回数据data的MD5校验和. 举例: package main import ( "fmt" "crypto/md5" ) f…
参考:https://studygolang.com/pkgdoc 导入方式: import "crypto/sha1" sha1包实现了SHA1哈希算法,参见RFC 3174. Constants SHA1的块大小. SHA1校验和的字节数. func Sum func Sum(data []byte) [Size]byte 返回数据data的SHA1校验和. 举例: package main import ( "fmt" "crypto/sha1&qu…
参考:https://studygolang.com/pkgdoc 导入方式: import "crypto/sha256" sha256包实现了SHA224和SHA256哈希算法,参见FIPS 180-4. Constants SHA224和SHA256的字节块大小. SHA256校验和的字节长度. SHA224校验和的字节长度. func Sum256 func Sum256(data []byte) [Size]byte 返回数据的SHA256校验和. 举例: package m…
#2个标准库模块放一起学习,这样减少占用地方和空间#标准库之compileall字节编译源文件import compileall,re,sys#作用是查找到python文件,并把它们编译成字节码表示,将结果保存到.pyc,pyo文件中#编译一个目录#compile_dirr()递归地扫描一个目录,并对其中文件完成字节编译compileall.compile_dir(r'b')#默认情况下,所有子目录都会扫描,直到尝试达到10#筛选目录,可以使用rx参数提供一个正则表达式来匹配要排除的目录名com…
#python标准库基础之:linecacge:高效读取文本文件#说明与作用"""可以从文件或者导入python模块获取文件,维护一个结果缓存,从而可以更高效地从相同文件读取多行文本;此模块会在python标准库的其他部分中用到,缓存实现将在内存中保存文件内容(解析为单独的行).API通过索引一个列表返回所请求的行.与反复地读取文件并解析文本来查找所需文本行相比,这样可以节省时间,这个方法在查找同一个文件中多行尤其有用 ,比如一个异常."""im…
# -*- coding: utf-8 -*-# 作者:新手__author__ = 'Administrator'#标准库:日期时间基础学习:calendar:处理日期#例1import calendarc=calendar.TextCalendar(calendar.SUNDAY)c.prmonth(2015,3)#prmonth()简单函数,生成一个月的格式文件输出#TextCalendar()从星期天(为第一天,因为老外是从星期天开始算第一天的)#利用HTMLCalendar和forma…
参考https://studygolang.com/pkgdoc 标准库path中有的该path/filepath库中都有,所以一般都使用path/filepath 导入方式: import "path/filepath" filepath包实现了兼容各操作系统的文件路径的实用操作函数. 1)constants常量 const ( Separator = os.PathSeparator //"/" ListSeparator = os.PathListSepara…
参考https://studygolang.com/pkgdoc 导入方式: import "io" o包提供了对I/O原语的基本接口.本包的基本任务是包装这些原语已有的实现(如os包里的原语),使之成为共享的公共接口,这些公共接口抽象出了泛用的函数并附加了一些相关的原语的操作. 因为这些接口和原语是对底层实现完全不同的低水平操作的包装,除非得到其它方面的通知,客户端不应假设它们是并发执行安全的. ⚠️os 包有三个可用变量 os.Stdout ,os.Stdin 和 os.Stder…
参考https://studygolang.com/pkgdoc 导入方式: import "bufio" bufio包实现了有缓冲的I/O.它包装一个io.Reader或io.Writer接口对象,创建另一个也实现了该接口,且同时还提供了缓冲和一些文本I/O的帮助函数的对象. bufio包的读写模块提供了针对字节或字符串类型的缓冲机制,因此很适合用于读写UTF-8编码的文本文件 1. type Reader type Reader struct { buf []byte rd io.…
在操作系统下,用户可以通过操作系统的命令来管理文件,参考linux文件管理相关命令.Python标准库则允许我们从Python内部管理文件.相同的目的,我们有了两条途径.尽管在Python调用标准库的方式不如操作系统命令直接,但有它自己的优势.你可以利用Python语言,并发挥其他Python工具,形成组合的文件管理功能.Python or Shell? 这是留给用户的选择.本文中会尽量将两者相似的功能相对应. 本文基于linux文件管理背景知识 os包 os包包括各种各样的函数,以实现操作系统…
简介 <C标准库>书中对 C 标准库中的 15 个头文件的内容进行了详细的介绍,包括各头文件设计的背景知识.头文件中的内容.头文件中定义的函数和变量的使用.实现.测试等. 我学习此书的目的是了解 C 标准库中的内容及使用方式.出于便于使用的目的,此笔记中主要记录了各头文件中的宏定义.函数的含义和使用方式. 目录 文档:C标准库…
#标准库:StringIO提供类文件API文本缓冲区#作用:可以处理内存中的文本,有2种不同的实现:cStringIP版本用c编写提高速度,StringIO用python来提供可移植性,与其他字符串连接相比,cStringIO构造大字符串提供了更好的性能#示例try:    from cStringIO import StringIOexcept:    from  StringIO import StringIO#写入缓冲区out=StringIO()out.write('buffer.')p…
参考:https://studygolang.com/pkgdoc 导入方式: import "encoding/base64" base64实现了RFC 4648规定的base64编码.Base64是网络上最常见的用于传输8Bit字节码的编码方式之一,Base64就是一种基于64个可打印字符(即6Bits)来表示二进制数据(即8Bits)的方法.Base64编码是从二进制到字符的过程,可用于在HTTP环境下传递较长的标识信息,这样更适合放在URL中进行传递.此时,采用Base64编码…
参考:https://studygolang.com/pkgdoc 导入方法: import "net/rpc" RPC(Remote Procedure Call Protocol)就是想实现函数调用模式的网络化,它是一种通过网络从远程计算机程序上请求服务,而不需要了解底层网络技术的协议. 客户端就像调用本地函数一样,然后客户端把这些参数打包之后通过网络传给服务端,服务端解包到处理过程中执行,然后执行结果返回给客户端 运行时一次客户机对服务器的RPC调用步骤有: 调用客户端句柄,执行…
== os 模块 == ``os`` 模块为许多操作系统函数提供了统一的接口. 这个模块中的大部分函数通过对应平台相关模块实现, 比如 ``posix`` 和 ``nt. os`` 模块会在第一次导入的时候自动加载合适的执行模块. === 处理文件=== 内建的 ``open / file`` 函数用于创建, 打开和编辑文件, 如 [Example - #eg--] 所示. 而 ``os`` 模块提供了重命名和删除文件所需的函数. ====Example -. 使用 os 模块重命名和删除文件=…
#glob文件名模式匹配#作用:使用unix shell规则查找与一个模式匹配文件名"""尽管glob api很小,但这个模块很强大,只要程序需要查找文件系统中名字与某种模式匹配一组文件,就可以使用此模块,要创建一个文件名列表,要求其中各个文件名都某个特定的扩展名,前缀或者中间都有某个共同字符串.就可以使用glob而不是编写定制代码来扫描目录内容.glob模式与正则re模式使用正则表达式并不相同,实际上.glob模式遵循标准unix路径扩展规则,只使用几个特殊字符来实现2个不…
# -*- coding: utf-8 -*-# 作者:新手__author__ = 'Administrator'#文件的比较import os,filecmp#作用用于比较系统中的目录和文件#例子2def mkfile(name,body=None):    with open(name,'w')as name1:        name1.write(body or name)    returndef mk_dir(top):    if not os.path.exists(top):…
参考https://studygolang.com/pkgdoc 导入方式: import "fmt" mt包实现了类似C语言printf和scanf的格式化I/O.格式化动作('verb')源自C语言但更简单. func Printf func Printf(format string, a ...interface{}) (n int, err error) Printf根据format参数生成格式化的字符串并写入标准输出os.stdout.返回写入的字节数和遇到的任何错误. fu…
参考: https://studygolang.com/pkgdoc http://c.biancheng.net/golang/concurrent/ 导入方式: import "reflect" reflect包实现了运行时反射,允许程序操作任意类型的对象.主要是实现了泛型,比如在一个函数中能根据传入的参数来确定参数的类型,而不是一开始就指定参数类型,这样一个函数就可以支持所有类型: func Minimum(first interface{}, rest ...interface…
参考:https://studygolang.com/pkgdoc 导入方式: import "mime/multipart" multipart实现了MIME的multipart解析,参见RFC 2046.该实现适用于HTTP(RFC 2388)和常见浏览器生成的multipart主体. 1.什么是multipart/form-data(来自https://blog.csdn.net/five3/article/details/7181521) multipart/form-data…
参考:https://studygolang.com/pkgdoc 导入方法: import "mime" mime实现了MIME的部分规定. 什么是MIME: MIME(Multipurpose Internet Mail Extensions)多用途互联网邮件扩展类型,设计的最初目的是为了在发送电子邮件时附加多媒体数据,让邮件客户程序能根据其类型进行处理. 之后则是用来设定某种扩展名的文件用一种应用程序来打开的方式类型,当该扩展名文件被访问的时候,浏览器会自动使用指定应用程序来打开…
参考:https://studygolang.com/pkgdoc 导入方式: import "text/template" template包实现了数据驱动的用于生成文本输出的模板.其实简单来说就是将一组文本嵌入另一组文本模版中,返回一个你期望的文本 如果要生成HTML格式的输出,参见html/template包,该包提供了和本包相同的接口,但会自动将输出转化为安全的HTML格式输出,可以抵抗一些网络攻击. 用作模板的输入文本必须是utf-8编码的文本."Action&qu…
参考:https://studygolang.com/pkgdoc 导入方式: import "encoding/xml" 实现的简单的理解XML命名空间的XML 1.0编译器 func Unmarshal —— 用于解析XML文件 func Unmarshal(data []byte, v interface{}) error Unmarshal解析XML编码的数据并将结果存入v指向的值.v只能指向结构体.切片或者和字符串.良好格式化的数据如果不能存入v,会被丢弃. 因为Unmars…
参考https://studygolang.com/pkgdoc 导入方式: import "encoding/json" json包实现了json对象的编解码,参见RFC 4627.Json对象和go类型的映射关系请参见Marshal和Unmarshal函数的文档. 参见"JSON and Go"获取本包的一个介绍:http://golang.org/doc/articles/json_and_go.html func Unmarshal func Unmarsh…
参考:https://studygolang.com/pkgdoc 导入方式: import "net" net包提供了可移植的网络I/O接口,包括TCP/IP.UDP.域名解析和Unix域socket. 虽然本包提供了对网络原语的访问,大部分使用者只需要Dial.Listen和Accept函数提供的基本接口:以及相关的Conn和Listener接口.crypto/tls包提供了相同的接口和类似的Dial和Listen函数. 1)IP type IP type IP []byte IP…
参考https://studygolang.com/pkgdoc 导入方式: import "strings" strings包实现了用于操作字符的简单函数. 常用的几个函数: func Contains func Contains(s, substr string) bool 判断字符串s是否包含子串substr. 举例: package main import( "fmt" "strings" ) func main() { fmt.Prin…
参考:https://studygolang.com/pkgdoc 导入方式: import "net/rpc/jsonrpc" jsonrpc包实现了JSON-RPC的ClientCodec和ServerCodec接口,可用于rpc包. func Dial func Dial(network, address string) (*rpc.Client, error) Dial在指定的网络和地址连接一个JSON-RPC服务端 func ServeConn func ServeConn(…