温馨提示:为了更好的教程体验,提供视频、阅读地址

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 是否可用。

最后

这两个函数非常有用,以后遇到问题的时候,可以善用这两个函数。一定会解决你的不少问题。


我的大本营

学会这三个排版原则,你就能超过80%人的排版

你想过将你的人生游戏化吗?

用游戏的思路激励自己

寻找有趣或更有效率的事、工具和教程

【PyTorch教程】P3. Python学习中的两大法宝函数(当然也可以用在PyTorch)的更多相关文章

  1. Python学习教程(Python学习视频_Python学些路线):Day06 函数和模块的使用

    Python学习教程(Python学习视频_Python学些路线):函数和模块的使用 在讲解本章节的内容之前,我们先来研究一道数学题,请说出下面的方程有多少组正整数解. $$x_1 + x_2 + x ...

  2. 记录Python学习中的几个小问题

    记录Python学习中的几个小问题,和C#\JAVA的习惯都不太一样. 1.Django模板中比较两个值是否相等 错误的做法 <option value="{{group.id}}&q ...

  3. Python基础入门教程,Python学习路线图

    给大家整理的这套python学习路线图,按照此教程一步步的学习来,肯定会对python有更深刻的认识.或许可以喜欢上python这个易学,精简,开源的语言.此套教程,不但有视频教程,还有源码分享,让大 ...

  4. 如何在Python中让两个print()函数的输出打印在一行内?

    1.两个连续的print()函数为什么在输出时内容会分行显示? 解:print()中有两个默认参数sep和end,其中sep是代替分隔符,end是代替末尾的换行符,默认使用‘,’代替空格,且默认末尾加 ...

  5. python学习 day09 (3月14日)----函数

    一.函数的进阶 1.1 动态参数 1.2* ** 1.3*args , **kwargs 1.4 函数的注释 1.5名称空间 1.6函数的嵌套全局变量 : 贴边写的局部变量 : 不是贴边写的. ''' ...

  6. Python学习笔记——常用的内置函数

    一.yield def EricReadlines(): seek = 0 while True: with open('D:/temp.txt','r') as f: f.seek(seek) da ...

  7. webpack 教程 那些事儿03-webpack两大精华插件,热加载

    本节主要讲述 webpack的两大经典开发调试插件,热插拔内存缓存机制 文章目录 1. html-webpack-plugin插件的使用 2. webpack-dev-middleware 插件登场 ...

  8. Python学习(八) —— 内置函数和匿名函数

    一.递归函数 定义:在一个函数里调用这个函数本身 递归的最大深度:997 def func(n): print(n) n += 1 func(n) func(1) 测试递归最大深度 import sy ...

  9. 3dTiles 数据规范详解[3] 内嵌在瓦片文件中的两大数据表

    转载请声明出处:全网@秋意正寒 零.本篇前言 说实话,我很纠结是先介绍瓦片的二进制数据文件结构,还是先介绍这两个重要的表.思前想后,我决定还是先介绍这两个数据表. 因为这两个表不先给读者灌输,那么介绍 ...

随机推荐

  1. 每个新手程序员都必须知道的Python技巧

    当下,Python 比以往的任何时候都更加流行,人们每天都在实践着 Python 是多么的强大且易用. 我从事 Python 编程已经有几年时间了,但是最近6个月才是全职的.下面列举的这些事情,是我最 ...

  2. java第2天:类,对象,封装和构造方法

    1 面向对象简述 将 {1,3,45,56,78,90}转化为[1,3,45,56,78,90] 1-2 方法1:面向过程 代码块 public class test { public static ...

  3. 安装Office Visio 提示Office 16 Click-to-Run Extensibility Component

    今天在安装 Office Visio 2016 时,点击安装程序,出现以下错误:   出现这个问题的原因就是你的电脑以前安装过32位的office,卸载时,注册表没有清理干净. 解决方案: 在win1 ...

  4. 清理 Sketch缓存 Storyist 3.5.1中文破解版 for Mac

    Sketch这款软件可以用来做原型和UI设计,很多设计师和产品经理都在用,时间长了以后,Sketch会占据不少缓存空间,这时候可以试试 Sketch Cache Cleaner 这款软件清理历史文件和 ...

  5. Python_MySQL数据库的写入与读取

    [需求]1. 在数据库中创建表,且能按时间自动创建新表 2. 数据写入数据库 3. 从数据库读取数据 1. 创建表,并自动更新 def Creat_Table(InitMySQL,tabel_name ...

  6. Jenkins基本使用

    Jenkins安装 安装基本上属于傻瓜式安装了 选择安装路径不要包含中文 点击install 找到默认密码 选择插件安装 点击无,然后再选择安装 创建一个管理员 Jenkins配置任务 新建工程 输入 ...

  7. 【Java 基础】谈谈集合.List

    目录 1. ArrayList 1.1 ArrayList的构造 1.2 add方法 1.3 remove方法 1.4 查询方法 1.5 一些其他常用方法 1.6 ArrayList小结 2. Vec ...

  8. Linux系统基础

    Linux系统基础 目录   简介 0x01 Linux文件与目录管理 0x02 Linux系统用户以及用户组管理 0x03文档的压缩与打包 0x04 apt安装软件 0x05 进程管理 标签 Lin ...

  9. java-try,return和finally相遇时的各种情况

    今天碰到了这样一个问题:使用try,return和finally会碰到的各种情况1,try中有return时,执行顺序:2,try和finally中都有return时,执行顺序:3,运算代码在fina ...

  10. HTTP协议详解(一)——初识HTTP及请求

    何为HTTP(超文本传输协议)? 协议,即约定俗成的规范.HTTP则是浏览器与服务器之间交流的一种规范.HTTP基于TCP/IP协议,属于应用层的协议. 为什么Web应用不使用TCP或者UDP协议呢? ...