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

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. C++set 和 multiset的使用

    最后一个自由支配的暑假,学一些自己感兴趣的部分,也算为大三作准备. C++中set集合的使用 定义一个int类型的集合 set<int> s: set<int>::iterat ...

  2. [以太坊源代码分析] I.区块和交易,合约和虚拟机

    最近在看以太坊(Ethereum)的源代码, 初初看出点眉目. 区块链是近年热点之一,面向大众读者介绍概念的文章无数,有兴趣的朋友可自行搜索.我会从源代码实现入手,较系统的介绍一下以太坊的系统设计和协 ...

  3. 02-20 kd树(鸢尾花分类)

    [TOC] 更新.更全的<机器学习>的更新网站,更有python.go.数据结构与算法.爬虫.人工智能教学等着你:https://www.cnblogs.com/nickchen121/ ...

  4. python 报错TypeError: 'range' object does not support item assignment,解决方法

    贴问题 nums = range(5)#range is a built-in function that creates a list of integers print(nums)#prints ...

  5. 支撑微博亿级社交平台,小白也能玩转Redis集群(原理篇)

    Redis作为一款性能优异的内存数据库,支撑着微博亿级社交平台,也成为很多互联网公司的标配.这里将以Redis Cluster集群为核心,基于最新的Redis5版本,从原理再到实战,玩转Redis集群 ...

  6. postman-windows下newman的使用

    一.newman的安装 1.安装node.js下载https://nodejs.org/en/ C:\Users\iphauser>node -vv10.16.1C:\Users\iphause ...

  7. AB实验的高端玩法系列2 - 更敏感的AB实验, CUPED!

    背景 AB实验可谓是互联网公司进行产品迭代增加用户粘性的大杀器.但人们对AB实验的应用往往只停留在开实验算P值,然后let it go...let it go ... 让我们把AB实验的结果简单的拆解 ...

  8. 三维动画形变算法(Mixed Finite Elements)

    混合有限元方法通入引入辅助变量后可以将高阶微分问题变成一系列低阶微分问题的组合.在三维网格形变问题中,我们考虑如下泛函极值问题: 其中u: Ω0 → R3是变形体的空间坐标,上述泛函极值问题对应的欧拉 ...

  9. 百万年薪python之路 -- 字典(dict)练习

    1.请将列表中的每个元素通过 "_" 链接起来. users = ['大黑哥','龚明阳',666,'渣渣辉'] users = ['大黑哥','龚明阳',666,'渣渣辉'] u ...

  10. Linux常用命令-不定时记录

    文件移动命令 命令格式:mv [-fiv] source destination 参数说明:-f:force,强制直接移动而不询问-i:若目标文件(destination)已经存在,就会询问是否覆盖- ...