python
侃山
这个作者很懒,什么都没留下…
展开
-
在pc上使用jupyter跑服务器上的代码
将该进程始终在后台进行,这样以后不用打开服务器,直接在本地就能访问服务器的jupyter了。就可以来到jupyter页面了。现在输入你之前设置好的密码,就可以访问你的服务器了。下一步,在服务器上来到你想要作为jupyter根目录的文件夹,使用命令。命令,创建你的jupyter密码。这一步很简单,就不截图了。在红框处看到的端口号8888就是你之后要使用的端口号了。最后,来到本地,在浏览器URL输入。现在ctrl+c退出,使用命令。首先,在服务器上使用。原创 2024-05-21 13:43:02 · 300 阅读 · 0 评论 -
pycharm滚轮放大字体
进入settings,然后按从左到右的箭头顺序依次点击即可。原创 2024-05-11 15:05:39 · 155 阅读 · 0 评论 -
conda换源和pip换源
conda的换源网上教程很多了,我在这里就不提了,随便找个赞数高的教程参考即可。但是,conda换源成功后,只能运用于conda install命令,而pip install命令不会自动选取之前换的源。最近在anaconda虚拟环境里时,pip下载实在过慢,忍不住怀疑换源到底成功了没,最后发现conda和pip的换源不是一个东西。后成功换源的,之后的pip下载速度也是从若干kb成功变成了10多兆。本人的pip源是通过以下命令。原创 2024-05-03 13:33:14 · 467 阅读 · 1 评论 -
jupyter notebook切换conda虚拟环境
此外,进入ipy文件以后,点击kernel,再点击change kernel,如图中箭头所示,依然可以切换虚拟环境。其中,前一个d2l指虚拟环境名,后一个d2l指jupyter notebook中的虚拟环境名,二者可以不同。可以发现,在new中出现了d2l环境,接下来只需要手动选择一下,就可以切换环境了。最后,进入jupyter notebook。然后,如代码所示安装ipykernel包。原创 2024-05-02 16:34:39 · 434 阅读 · 1 评论 -
python绝对导入与相对导入(包内导入)(在创建自己的包、模块或系统工程时会用到的知识)
我们先上案例,再分析原因。若在pycharm新建工程,再创立几个文件,文件结构如下图也就是说,我们在工程下有文件test.py和文件夹p,在p下分别有run.py和tool.py两个文件一开始,py文件中都为空,现在一步一步来先在test文件中写入,然后运行test文件,发现程序正常运行;我们再在run文件中写入,运行run,发现依然正常。我们再回到test系统无法找到tool模块,这是为什么?因为我们平时运行import时,是没有指明路径的,此时系统会从sys.path。原创 2024-04-20 12:19:59 · 376 阅读 · 0 评论 -
python生成器的创建方法
生成器是一种特殊的迭代器,于是,我们使用生成器来遍历元素时也可以起到节省内存的作用。原创 2024-04-19 17:27:54 · 245 阅读 · 0 评论 -
pytorch多分类问题(b站up 刘二大人)
在此记录完整代码,以后有空也许会讲解。原创 2024-04-18 23:52:56 · 240 阅读 · 1 评论 -
pycharm永久改变sys.path
进入pycharm,选择file->settings->interpreter。再单击左上角减号右侧第三个,长得像思维导图的图标。在这里选择图中所示show all。之后添加你的路径,确认即可。原创 2024-04-18 19:37:40 · 1124 阅读 · 0 评论 -
08 pytorch 加载数据集(B站up 刘二大人)
注:笔者的糖尿病数据集有问题,使用了sklearn中的乳腺癌数据集,因此部分参数与老师有差异。此外,原乳腺癌数据集第一行含有字符串,此处的。这一章我们要利用data和dataloader来mini-batch(之前是batch)里的迭代数,也就是batch/batch-size。已将第一行去掉,为另一个新建文件。设置为0比设置为2更快。原创 2024-04-18 16:29:33 · 218 阅读 · 0 评论 -
pytorch 处理多维特征的输入(b站up 刘二大人)
考虑到我的糖尿病数据集有一些问题,标签不是0和1而是许多小数,这里直接采用代码中目录所示的乳腺癌数据集进行实验。以后有空也许会更新讲解,急用代码的小伙伴可以先拿去跑。由于乳腺癌数据集有30个特征,这里设计。原创 2024-04-18 11:59:28 · 229 阅读 · 0 评论 -
python __len__魔术方法
如图,该方法可以自定义实例对象的长度,该长度为。原创 2024-04-17 23:49:18 · 114 阅读 · 1 评论 -
python中__getitem__方法
很正常,因为我们还没有实现该魔术方法。该方法可以使实例化的对象变得可遍历。对象变得可遍历了,且遍历值为。原创 2024-04-17 23:46:42 · 260 阅读 · 0 评论 -
python装饰器(decorator)是什么?(小白入门)
一个计时功能还好,但若是更复杂的功能呢?最后,本文仅为目标功能(my_func函数)无参数,辅助函数的参数只有主函数时的讲解,进一步的过程可参考如下网址视频。我们将函数my_func()通过一个count_time_wrapper(func)函数,得到了一个增强的函数。此处我们就使用了decorator,它的功能是:不用调用,直接给my_func()增加了计数功能。这就是装饰器,通过一个语法糖,在不显式调用函数的情况下达到调用函数的目的。追加:现已写了较为详细的6篇关于装饰器的博客,第一篇的地址为。原创 2024-04-02 17:06:03 · 181 阅读 · 0 评论 -
python的抽象类和抽象方法
抽象类是一种不能直接被继承的类。举个例子,我们可以从类。执行无输出,程序结束。我们成功定义了一个含有抽象方法。,其中前者两条腿走路,后者四条腿走路,而单独的类。却没有一个几条腿走路的方法,因为这是不确定的。,实际上也可以装饰其他东西,读者可自己完成。中的所有抽象方法,我们才能顺利将。库,这里我们装饰了实例方法。(关于装饰器,可查看。原创 2024-04-17 23:30:33 · 425 阅读 · 0 评论 -
python中什么是元类?
那么,python中万物皆对象,类是否也是一个被创建出的对象呢?是实例对象的属性,代表其所属的类。由第一行,可以看出类也是由另一个类创建出来的,这个类叫做。是由什么创建出来的,由执行结果,依然是。即,我们打印出了这3个实例对应的类。由第二行,我们想要查看元类。,即元类就是创建一切类的类。原创 2024-04-17 23:12:21 · 254 阅读 · 0 评论 -
python打开文件后,为什么要关闭?
函数以后,要写入的字符先存入缓冲区,登缓冲区满或执行某些操作以后才会把缓冲区的数据写入文件。但若不关闭文件,仅仅调用了。函数,就可能导致数据存放在缓冲区,而未被成功写入文件。以写入数据为例,调用。原创 2024-04-16 20:21:46 · 222 阅读 · 0 评论 -
python property用法
python中的property类可以让我们以处理变量的方式来调用函数我们先感性地认识一下它。可以发现,我们从外部不能访问私有变量。关于变量的命名,可以参考结果为19这里用到了装饰器,关于装饰器,可以参考可以发现,age()虽然是一个方法,但我们却通过类似变量的方式对它进行了访问,得到了它的返回值。这就是property最基本的使用。原创 2024-04-16 13:13:58 · 166 阅读 · 0 评论 -
python的__bases__属性
即只返回父类,不返回间接父类。原创 2024-04-16 12:36:39 · 149 阅读 · 0 评论 -
python装饰器系列教程(6)(结束篇)
函数定义的后面才行),也就是说,这个语法糖等效于一个语句,而这个语句只能接收一个参数,而这个参数还正好是要被修饰的函数名。那么,就没有办法传递其他参数了吗?重新定义一个装饰器当然可以,但我们这里直接讨论带有参数的装饰器应该怎么做。中,让新函数根据接收的参数返回一个对应于想要添加符号的旧函数。本篇为装饰器系列的最后一篇:含有参数的装饰器。至此,装饰器系列讲解完成。我们可以将原先的装饰器定义在一个新函数。,这一句我们之前讨论过,等效于。但是,如果我想将分隔符换为。(当然,如果用这句语句来替换。原创 2024-04-16 10:59:43 · 159 阅读 · 0 评论 -
python装饰器系列教程(5)
类似于之前对含有参数的函数进行装饰的思路一样,我们调用被装饰器装饰的函数时,实际上调用的是。现在,我们的装饰器就比较通用了,既可以对任意长参数的函数进行装饰,也可以返回其对应的返回值。,最后也成功打印了返回值结果。本篇主题:如何对含有返回值的函数进行装饰。装饰完毕以后,可以发现,我们可以正常调用。函数,因此,必须要让。原创 2024-04-16 10:40:12 · 225 阅读 · 0 评论 -
python装饰器系列教程(4)
本篇在上一篇的基础上,探究适用范围更广的装饰器,即,如何使用同一个装饰器来装饰含有参数个数不相等的函数。这里我们使用了不定长参数的传递法,不论参数个数为几个,都可以正常传递参数。原创 2024-04-16 10:28:31 · 264 阅读 · 0 评论 -
python装饰器系列教程(3)
可见,带有参数时,原先的写法并不正确。错误原因已在此处进行了说明↑↑↑。本篇讲解如何对有参数的函数进行装饰。的形参,由此实现了参数的传递。我们将外界输入的实参传递给。上一篇装饰器教程可查看。原创 2024-04-16 10:20:17 · 143 阅读 · 0 评论 -
python装饰器系列教程(2)
系列2讲解装饰器的叠加。我们的问题是,如果有2个装饰器同时进行装饰,那么装饰的顺序是什么样的?可见,离被装饰函数近的装饰器会先被用来装饰。原创 2024-04-16 09:59:45 · 142 阅读 · 0 评论 -
python装饰器系列教程(1)
在此基础上,python提供了一种被称为语法糖的写法,以一种更简单的写法,实际实现相同的功能。总之,这段代码通过一个闭包操作,给原来的2个函数额外增加了新功能。现需在每条提示信息之前加上一条关于客户来自中国的信息,可改写为。但这会造成代码冗余,有没有更好的方法?这里需要用到一点函数变量的知识,可参考。现在大家已经初步掌握装饰器的用法了。若为了与用户交互,有如下代码。语句等效于实现了之前的。原创 2024-04-16 09:50:10 · 193 阅读 · 0 评论 -
python导入模块以后
且执行import语句以后,会执行原mine.py文件,原文件变量的作用域仅限于该模块的命名空间中,无法在主文件内直接访问。之后,会为mine.py文件分配内存地址,并生成一个模块对象mine,指向该内存地址。python导入模块,如导入自定义模块mine,即。原创 2024-04-15 18:19:47 · 92 阅读 · 0 评论 -
python函数变量的理解
可以发现,指向依然正常,可以执行加法功能。也指向该函数,于是可以正常调用语句。,其 实质是令一个变量。指向了一个特定的函数。原创 2024-04-14 12:42:50 · 168 阅读 · 0 评论 -
python函数多个参数的调用方式
方式一:按顺序赋值方式二:指明每个参数的值,于是不必按顺序赋值也可以。原创 2024-04-13 17:18:30 · 295 阅读 · 0 评论 -
python原始字符串
Python 中的原始字符串(Raw String)是一种特殊类型的字符串,它以 r 或 R 开头。可知,原始字符串忽转义字符。可在文本中有较多反斜杠需要输出时使用。原创 2024-04-13 11:04:14 · 307 阅读 · 0 评论 -
python导入包和导入模块的区别
文件中没有写上相应代码,于是不会自动导入包内的模块。关于包和模块的区别可以参考。更细一步的教程有空再写吧。读者可以自己建立一个包。原创 2024-04-13 00:37:08 · 202 阅读 · 0 评论 -
包(package)和模块(module)的区别是什么?
关于这一点,大家可以在pycharm中进行新建,在新建中可以发现Python Package,选择新建,就会创建一个类似目录的东西,其中含有一个名叫。为了使代码更容易维护,提供代码重用价值,可以将一组相关功能的代码写入一个单独的.py文件中。这个.py文件就被称作一个模块。文件的目录就是一个包。(ps:python3.3版本以后,不需该文件也可以)包是一个有层次的文件目录结构,其中含有若干子包和若干模块。的形式来访问该变量,从而可以与本文件内原有的。访问模块内的资源时,如访问模块。变量时,需要先导入,即。原创 2024-04-12 23:00:11 · 273 阅读 · 0 评论 -
pytorch入门案例(来自B站up主刘二大人视频)
选择IDE为pycharm,文中y_hat表示预测值案例如下:已知x=1时,y为2;x=2时,y为4;x=3时,y为6,现利用线性模型(不含偏置量,仅包含斜率参数,即y_hat=w*x)预测x=4时y的值。原创 2024-04-11 20:43:09 · 1369 阅读 · 0 评论 -
python中super的作用
在pycharm中输入super,指针放到super上,按ctrl+鼠标左键,即可看见super类的有关介绍""""""super(参数一,参数二)会接收2个参数从功能的角度来看,参数一决定指向的MRO链条的下一个节点,参数二决定MRO链条从参数的类型来看 ,参数一填入类,参数二根据需要继承的方法可以①填入实例②填入类(分别对应实例方法、类方法),且会把参数二直接传入调用的函数(之后会有代码举例)简单举个例子:若参数一填入C,参数二填入C。则参数一决定了下一个节点为B,也就是说将要继承B中的某个方法。原创 2024-04-10 11:58:19 · 462 阅读 · 0 评论 -
Could not install packages due to an OSError: Missing dependencies for SOCKS support.(python常见错误)
【代码】Could not install packages due to an OSError: Missing dependencies for SOCKS support.(python常见错误)原创 2024-04-07 20:00:50 · 198 阅读 · 0 评论 -
python继承与__init__方法
若某B类继承于某A类,且二者中各有__init__方法,那么由A创建的实例只会调用A中的__init__方法,不对B中的__init__方法做任何执行。原创 2024-04-05 21:33:16 · 135 阅读 · 0 评论 -
python私有化机制(伪私有)
理论上双下划线开头的变量__x是私有而不能访问的,但python对于私有机制的处理是这样的:将__x进行重命名为_Person__x,即在之前加上单下划线与类名称,以此达到不能通过__x访问的目的。如果刻意要通过程序中的方式进行访问,依然是可行的。python的私有化机制是伪私有,何出此言?原创 2024-04-02 21:29:43 · 186 阅读 · 0 评论 -
python类的属性
某个类的公共属性可被任意访问;受保护的属性在某些情况下可以被访问;私有属性连继承的子类也不能访问。普通字母开头的为公共属性,单下划线开头为受保护的属性,双下划线开头为私有属性。原创 2024-04-02 21:18:50 · 109 阅读 · 0 评论 -
python对象、类、实例的区别
python中的对象都是由类衍生而来的,一般把二者分别叫作类和对象。而又由于对象这个词的广义性,为了便于区分,有时也把二者分别称为类和实例,这样就没有歧义了。首先,python中万物皆是对象,因此下文中一开始提到的对象不再是此处最广义的对象含义。原创 2024-04-01 20:13:52 · 124 阅读 · 0 评论 -
pycharm环境下Missing dependencies for SOCKS support错误
本人在pycharn中调用numpy时发现库里没有numpy,于是直接在pycharm里手动安装numpy(从settings进入Python interpreter,显示的库里没有numpy,点击Package上方的+号手动install),遇到了如标题所示的错误。这时也许是魔法的原因。关闭魔法,就可以install成功了。原创 2024-04-01 10:20:44 · 176 阅读 · 0 评论 -
元组和序列的区别
元组的元素指向的对象如果是不可变的,如一个常量1,则元组的该元素是不可变的;元组的元素指向的对象如果是可变的,如一个序列,则可以单独对序列进行操作,如在序列的末尾增加一个元素。最终该操作会导致 元组的该“序列元素"的长度加一。元组可以看作是一种特殊的序列,但序列的各个元素可以改变,元组却不一定。只是宏观上来看,元组的该元素依然指向该序列,其实也可以看作一种不变。原创 2024-03-30 17:12:49 · 163 阅读 · 0 评论 -
python元素存放(类似指针)
python元素存放原创 2024-03-30 16:16:27 · 222 阅读 · 0 评论