【PyTorch教程】P3. Python学习中的两大法宝函数(当然也可以用在PyTorch)
温馨提示:为了更好的教程体验,提供视频、阅读地址
Youtube: https://www.youtube.com/playlist?list=PLgAyVnrNJ96CqYdjZ8v9YjQvCBcK5PZ-V
BiliBili: https://www.bilibili.com/video/av74281036/
Github: https://github.com/xiaotudui/PyTorch-Tutorial
相关下载:https://pan.baidu.com/s/16koDDDvAFO7rNoi-uR-A_g 提取码:pahi
在学习中,遇到任何问题,可以关注公众号:土堆碎念,直接在对话框中留言,我会不定时解答的~
公众号:土堆碎念,回复:pytorch,即可获得所有的数据集及安装包, 省去找软件、数据集的时间。(同步更新中,请勿急躁)
前言
一般的教程的介绍顺序是:基本的数据类型,一些常用函数之类的。
但我在学习的过程中,比如他在介绍 b函数,总会引入 a函数之类的。而 a函数的意义我又不知道,就很烦了。
而且,我还不知道每个模块中,有哪些函数,整个学习过程中,对我来说太痛苦了。
所以,这次我会介绍 Python 中的两个法宝函数,它试用于任何 Python Package,所以,当然也适用于 PyTorch。
授人以鱼不如授人以渔,这两个法宝函数,对你自学,深入学习,一定有巨大帮助。
Package 与 两大法宝函数

我们之前说过,一个 Package 就好像一个工具箱。我们现在来解析,这个名为 pytorch 的工具箱结构。
游戏开始!你有两个道具:
dir() 道具:相当于你的手和眼睛,它可以帮你打开东西和看到其中的东西。
help() 道具:相当于说明书,你可以知道每个工具的使用方法。
现在让我们去探索吧!
我们首先对 pytorch 工具箱使用 dir() 道具,这样就可以发现其中有 1,2,3,4 的分隔区 或者 小工具箱。
dir(pytorch) 的输出将会是:1,2,3,4。
现在我们想去探索 分隔区1 里面有什么?
我们继续使用我们的 dir() 道具,dir(pytorch.1),将会输出 a,b,c。
这就说明,在 1 的分隔区或者小工具箱中,有名为 a,b,c的工具。
现在我们知道了 a 道具在 pytorch 工具箱中的1分隔区。
我们想知道如何使用它,这个时候,我们需要使用到另一个道具,help(),我们这样使用,help(pytorch.1.a)。它将会输出,使用 a 的方法。
总而言之:
dir(),能让你了解package有哪些东西,也许是更小的模块,或者是函数。
help(),能让你知道函数的使用方法。
实战——两个重要函数( dir(), help() )
1、首先,打开 PyCharm,应该默认会打开上一节创建的项目,如果没有的话,点击左上角的 File - Open,打开上一节创建的项目地址。
之后,点击左下角的 Python Console,检查第一行的 envs 后是不是 你创建的 conda环境的名字。

2、我们使用 import torch,导入 PyTorch。之前说过,package 就像一个工具箱,里面有各种各样的工具。
当我们要使用工具箱的时候,我们需要知道:工具箱中有什么工具,以及工具该如何使用(说明书)。而这两个函数,就是对应这两个功能。
dir 函数能让我们知道 工具箱 以及工具箱中的分隔区有什么东西。
help 函数能让我们知道每个工具是如何使用的,工具的使用方法。

3、现在,我们想去看看 torch 工具箱中,有什么?我们输入 dir(torch),会看到大量的结果。
这些结果也许是工具,也许是工具分隔区。

4、现在我们就之前检查 torch.cuda.is_available() 为例。我们在 torch 工具箱中,发现了 cuda 工具分隔区,或者更小的工具箱。
我们现在继续看看,cuda 这个小工具箱中,有什么?

5、我们在这个工具箱中,可以看到,is_available,我们之前使用的。我们对 is_available 继续使用 dir() 函数,可以看到输出,是带有前后双下划线的。这个时候,就大致表明,你看到的是这个对象的一些属性。也就是说明,这是一个函数,一个工具。你应该使用 help() 函数去查看这个工具的使用方法。
现在,我们使用 help(torch.cuda.is_available) 来查看这个工具,函数的使用方法。
当我们输入指令的时候,你可以看到这个工具、函数的作用。
torch.cuda.is_available 这个函数,返回一个 True 或者 False 来表明 CUDA 是否可用。

最后
这两个函数非常有用,以后遇到问题的时候,可以善用这两个函数。一定会解决你的不少问题。
我的大本营
寻找有趣或更有效率的事、工具和教程

【PyTorch教程】P3. Python学习中的两大法宝函数(当然也可以用在PyTorch)的更多相关文章
- Python学习教程(Python学习视频_Python学些路线):Day06 函数和模块的使用
Python学习教程(Python学习视频_Python学些路线):函数和模块的使用 在讲解本章节的内容之前,我们先来研究一道数学题,请说出下面的方程有多少组正整数解. $$x_1 + x_2 + x ...
- 记录Python学习中的几个小问题
记录Python学习中的几个小问题,和C#\JAVA的习惯都不太一样. 1.Django模板中比较两个值是否相等 错误的做法 <option value="{{group.id}}&q ...
- Python基础入门教程,Python学习路线图
给大家整理的这套python学习路线图,按照此教程一步步的学习来,肯定会对python有更深刻的认识.或许可以喜欢上python这个易学,精简,开源的语言.此套教程,不但有视频教程,还有源码分享,让大 ...
- 如何在Python中让两个print()函数的输出打印在一行内?
1.两个连续的print()函数为什么在输出时内容会分行显示? 解:print()中有两个默认参数sep和end,其中sep是代替分隔符,end是代替末尾的换行符,默认使用‘,’代替空格,且默认末尾加 ...
- python学习 day09 (3月14日)----函数
一.函数的进阶 1.1 动态参数 1.2* ** 1.3*args , **kwargs 1.4 函数的注释 1.5名称空间 1.6函数的嵌套全局变量 : 贴边写的局部变量 : 不是贴边写的. ''' ...
- Python学习笔记——常用的内置函数
一.yield def EricReadlines(): seek = 0 while True: with open('D:/temp.txt','r') as f: f.seek(seek) da ...
- webpack 教程 那些事儿03-webpack两大精华插件,热加载
本节主要讲述 webpack的两大经典开发调试插件,热插拔内存缓存机制 文章目录 1. html-webpack-plugin插件的使用 2. webpack-dev-middleware 插件登场 ...
- Python学习(八) —— 内置函数和匿名函数
一.递归函数 定义:在一个函数里调用这个函数本身 递归的最大深度:997 def func(n): print(n) n += 1 func(n) func(1) 测试递归最大深度 import sy ...
- 3dTiles 数据规范详解[3] 内嵌在瓦片文件中的两大数据表
转载请声明出处:全网@秋意正寒 零.本篇前言 说实话,我很纠结是先介绍瓦片的二进制数据文件结构,还是先介绍这两个重要的表.思前想后,我决定还是先介绍这两个数据表. 因为这两个表不先给读者灌输,那么介绍 ...
随机推荐
- 每个新手程序员都必须知道的Python技巧
当下,Python 比以往的任何时候都更加流行,人们每天都在实践着 Python 是多么的强大且易用. 我从事 Python 编程已经有几年时间了,但是最近6个月才是全职的.下面列举的这些事情,是我最 ...
- java第2天:类,对象,封装和构造方法
1 面向对象简述 将 {1,3,45,56,78,90}转化为[1,3,45,56,78,90] 1-2 方法1:面向过程 代码块 public class test { public static ...
- 安装Office Visio 提示Office 16 Click-to-Run Extensibility Component
今天在安装 Office Visio 2016 时,点击安装程序,出现以下错误: 出现这个问题的原因就是你的电脑以前安装过32位的office,卸载时,注册表没有清理干净. 解决方案: 在win1 ...
- 清理 Sketch缓存 Storyist 3.5.1中文破解版 for Mac
Sketch这款软件可以用来做原型和UI设计,很多设计师和产品经理都在用,时间长了以后,Sketch会占据不少缓存空间,这时候可以试试 Sketch Cache Cleaner 这款软件清理历史文件和 ...
- Python_MySQL数据库的写入与读取
[需求]1. 在数据库中创建表,且能按时间自动创建新表 2. 数据写入数据库 3. 从数据库读取数据 1. 创建表,并自动更新 def Creat_Table(InitMySQL,tabel_name ...
- Jenkins基本使用
Jenkins安装 安装基本上属于傻瓜式安装了 选择安装路径不要包含中文 点击install 找到默认密码 选择插件安装 点击无,然后再选择安装 创建一个管理员 Jenkins配置任务 新建工程 输入 ...
- 【Java 基础】谈谈集合.List
目录 1. ArrayList 1.1 ArrayList的构造 1.2 add方法 1.3 remove方法 1.4 查询方法 1.5 一些其他常用方法 1.6 ArrayList小结 2. Vec ...
- Linux系统基础
Linux系统基础 目录 简介 0x01 Linux文件与目录管理 0x02 Linux系统用户以及用户组管理 0x03文档的压缩与打包 0x04 apt安装软件 0x05 进程管理 标签 Lin ...
- java-try,return和finally相遇时的各种情况
今天碰到了这样一个问题:使用try,return和finally会碰到的各种情况1,try中有return时,执行顺序:2,try和finally中都有return时,执行顺序:3,运算代码在fina ...
- HTTP协议详解(一)——初识HTTP及请求
何为HTTP(超文本传输协议)? 协议,即约定俗成的规范.HTTP则是浏览器与服务器之间交流的一种规范.HTTP基于TCP/IP协议,属于应用层的协议. 为什么Web应用不使用TCP或者UDP协议呢? ...