21-npm 命令 官网:https://www.npmjs.cn/cli/view/ 常用命令1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848 2021-08-04 nodejs #nodejs
41-npm node_modules 包查找规则 如果导入的模块不是nodejs的内置模块,如fs(文件读写模块),path(路径模块),http(服务器模块),也不是以/,…/ 或者./ 开头的本地模块,而是第三方模块(通过npm下载的模块)。 那么nodejs会尝试从当前模块所在目录开始,尝试在它的 node_modules 文件夹里加载相应模块,根据模块的 package.json 来加载对应的模块; 如果没有找到,那么就再向上一级目录 2021-08-04 nodejs #nodejs
nodejs 和 npm 安装 CentOS 源码安装下载node.js 下载地址是:https://nodejs.org/en/download/ 1wget https://nodejs.org/dist/v12.14.0/node-v12.14.0-darwin-x64.tar.gz 解压及其重新命名12345# 解压tar zxvf node-v12.14.0-darwin-x64.tar.gz# 改名为nodejs 2021-08-04 nodejs #nodejs
npm 和 yarn 对比 nodejs 有两个常用的包管理工具,分别是 npm 和 yarn,两者都有安装包和模块,用 yarn 的时候安装会有一个 yarn.lock 的文件锁定版本,npm 有一个 package-lock.json 的文件锁定版本。 npm 是 Node 的包管理器,它于2010年发布,开启了web开发的新时代。在此之前,项目依赖库都是手动下载和管理的,npm 把 WEB 开发推向了一个更高的阶段。n 2021-08-04 nodejs > yarn #nodejs #yarn
报错之 0308010C digital envelope routines unsupported 问题描述123456789101112131415161718192021222324252627Error: error:0308010C:digital envelope routines::unsupported at new Hash (node:internal/crypto/hash:71:19) at Object.createHash (node:crypto:130: 2021-08-04 nodejs #nodejs
00-Python 打包工具 setuptools 简介 distutils: 打包鼻祖,所有打包工具的基础,官方支持。 setuptools:distutils 的升级版。重要 distribute:setuptools 的分支,现在合并回了 setuptools。 distutils2:已废弃。 为什么需要对项目分发打包?平常我们习惯了使用 pip 来安装一些第三方模块,这个安装过程之所以简单,是因为模块开发者为我们默默地为我们做了所有繁杂的工作 2021-07-31 Python #Python
01-Python 打包工具 setuptools 安装 setuptools 安装setuptools 安装有两种方法: 源码安装 在 https://pypi.org/project/setuptools/#files 中下载 zip 包。 解压执行 python setup.py install 安装 通过引导程序安装下载引导程序,它可以用来下载或者更新最新版本的 setuptools 123456789101112# 下载wget http 2021-07-31 Python #Python
03-Python 打包工具 setuptools setup.py 使用 使用 setup.py 的方法打包有三种方式: 使用命令行参数指定,一个一个将参数传递进去(极不推荐)。 在 setup.py 中的 setup 函数中指定(推荐使用)。 使用 pbr ,在 setup.cfg 中指定(易于管理,更推荐)。 python库的打包分发方式有两种: 源码包source dist(简称sdist)。 如 *.tar.gz,安装使用 pip install *.ta 2021-07-31 Python #Python
03-Python 打包工具 setuptools setup.py 打包的文件 官方文档:https://setuptools.pypa.io/en/latest/userguide/datafiles.html 需要打包的文件如果想要打包一些文件,通常通过setup函数的这些参数packages、include_package_data(其实就是MANIFEST.in文件)、exclude_package_data、package_data、data\_files 来指 2021-07-31 Python #Python
03-Python 打包工具 setuptools setup.py 文件详解 0、setup.py 示例先来个简单示例,下面依次讲解。 12345678910111213141516from setuptools import setup, find_packagessetup( name="mytest", version="1.0", author="flp", author_email="flepeng@163.com", descrip 2021-07-31 Python #Python
03-Python 打包工具 setuptools 脚本 easy_install 使用 当你安装完 setuptools 后,就拥有了一个叫做 easy_install 的第三方管理工具,这也是它区分于 distutils 的一大改进。 这里简单介绍一下它的用法,虽然它已经用得非常少了。 包的安装12345678910111213141516171819# 通过包名,从PyPI寻找最新版本,自动下载、编译、安装easy_install pkg_name# 通过包名从指定下载页寻找链接 2021-07-31 Python #Python
00-Python conda 简介 官网 官方文档:https://docs.conda.io/en/latest/ 官方命令文档:https://docs.conda.io/projects/conda/en/latest/commands.html conda简介Conda 是一个开源的软件包管理系统和环境管理系统,用于安装多个版本的软件包及其依赖关系,并在它们之间轻松切换。 Conda 是为 Python 程序创建的,适用 2021-07-30 Python #Python
01-Python conda安装 官方文档:https://docs.conda.io/en/latest/ conda 安装conda分为anaconda和miniconda。 anaconda是包含一些常用包的版本,miniconda则是精简版,需要啥装啥,所以推荐使用miniconda。 miniconda的功能足够我们后续安装软件使用,不需要同时安装两个。 conda 下载 https://repo.anaconda. 2021-07-30 Python #Python
02-Python conda 设置 channels 源 官方文档:https://docs.conda.io/en/latest/ 添加源conda 安装之后需要添加 channel 之后才能使用,官方 channel 可以使用以下命令安装 12conda config --add channels biocondaconda config --add channels conda-forge 但是官方channel在国外,可能网速会比较慢,可以 2021-07-30 Python #Python
03-Python conda 使用 官方文档:https://docs.conda.io/en/latest/ 官方命令文档:https://docs.conda.io/projects/conda/en/latest/commands.html 小环境安装软件前,先设置一个小环境,不要直接在自己账户的当前环境内安装软件。 怎么理解这句话呢?比如你在家里有个储藏室,但是你还可以再放进去一个柜子,柜子里放需要存的东西,这个柜子就类 2021-07-30 Python #Python
03-Python conda 使用 pip install 和 conda install 的区别 区别 conda install xxx:这种方式安装的库都会放在anaconda3/pkgs目录下,这样的好处就是,当在某个环境下已经下载好了某个库,再在另一个环境中还需要这个库时,就可以直接从pkgs目录下将该库复制至新环境而不用重复下载。 pip install xxx:分两种情况: 一种情况就是当前conda环境的python是conda安装的,和系统的不一样,那么xxx会被安装到an 2021-07-30 Python #Python
Python 之 dict 底层实现 Dictionary vs OrderedDict在 3.6 版本之前,Python Dict 底层在初始创建的时候采用的是 indice 和存储合并在一个二维数组当中。Dict 采用哈希表原理,key 作为取值对象,进行 hash(key) 操作,得到哈希值,然后用进行 值%字典容量 得到要插入的位置。 1234567891011121314151617my_dict = {} 2021-07-30 Python #Python
Python 之 list 底层实现 看一下 Python 的 CPython 实现(CPython 就是 Python 的 c 实现版本) 1234l = []l.append(1)l.append(2)l.append(3) 列表对象的 C 语言结构体CPython 中的列表实现类似于下面的 C 结构体。ob_item 是指向列表对象的指针数组。allocated 是申请内存的槽的个数。 12345typedef struct 2021-07-30 Python #Python
Python 之__file__ 在Python项目中,经常会获取文件的路径。经常会见到如下的语句: 12import osos.path.dirname(__file__) 那么这里的__file__是什么用呢? 其实就是当前脚本运行的路径。 但是也会分不同的情况。 如果执行命令时使用绝对路径,__file__就是脚本的绝对路径。 如果使用的是相对路径,__file__就是脚本的相对路径。 如果在交互式环境中,则会爆出异常。因 2021-07-30 Python #Python
Python 之__file__ 在Python项目中,经常会获取文件的路径。经常会见到如下的语句: 12import osos.path.dirname(__file__) 那么这里的__file__是什么用呢? 其实就是当前脚本运行的路径。 但是也会分不同的情况。 如果执行命令时使用绝对路径,__file__就是脚本的绝对路径。 如果使用的是相对路径,__file__就是脚本的相对路径。 如果在交互式环境中,则会爆出异常。因 2021-07-30 Python #Python