首页
学习
活动
专区
圈层
工具
发布
    • 综合排序
    • 最热优先
    • 最新优先
    时间不限
  • 来自专栏逸鹏说道

    模块开发

    这两天看到同事的一个小工具,用的是模块开发,也就是俗称的插件开发,用的是反射+接口的方式实现的。感觉挺好的,也就学习了一下,写个小Demo,在此记录下。 一、写接口类 接口类是所有模块的基础,因为让主程序去寻找模块,就是通过反射来找到继承此接口的相关项目,也就是后期包含继承此接口类的DLL文件。 ,因为各个模块都是UserControl,需要窗体来承载。 需要的方法大概有两个,寻找目录的层级、创建相应的模块。 + ex.Message); } } 2、创建相应模块 当存在一个DLL时,就生成一个模块,两个DLL时就要有两个模块,以此类推……     /// <

    1.2K60发布于 2018-04-11
  • 来自专栏企鹅号快讯

    Python模块知识6:OS、SYS模块

    1、os模块,和系统相关的,比如获取路径、目录、文件夹之类 常用方法: os.getcwd() #获取当前工作目录,即当前Python脚本工作的目录路径 os.rename('oldname','new 案例5:os.chdir("dirname") 改变当前脚本的工作目录,相当于shell下的cd 2、SYS模块 sys模块则是python程序用来请求解释器行为的接口。 PycharmProjects/study2017/s2.py'] 案例2:返回python解释程序的版本信息 print(sys.version) 3.5.1 (v3.5.1:37a07cee5969, Dec 6 2015, 01:54:25) [MSC v.1900 64 bit (AMD64)] 案例3:模块查找目录优先级。 sys.path是python的搜索模块的路径集,是一个list importsys foriteminsys.path: print(item) 查找优先级: 案例4:假设s2不在系统的目录,则可以先添加

    1.2K100发布于 2018-01-11
  • 来自专栏Web开发之路

    ES6 模块

    概述 在 ES6 前, 实现模块化使用的是 RequireJS 或者 seaJS(分别是基于 AMD 规范的模块化库, 和基于 CMD 规范的模块化库),还有 CommonJS(用于NodeJS)。 ES6 引入了模块化,其设计思想是在编译时就能确定模块的依赖关系,以及输入和输出的变量。 ES6模块化分为导出(export) 与导入(import)两个模块。 特点 ES6模块自动开启严格模式,不管你有没有在模块头部加上 **use strict;**。 模块中可以导入和导出各种类型的变量,如函数,对象,字符串,数字,布尔值,类等。 每个模块都有自己的上下文,每一个模块内声明的变量都是局部变量,不会污染全局作用域。 每一个模块只加载一次(是单例的), 若再去加载同目录下同文件,直接从内存中读取。 export 命令可以出现在模块的任何位置,但必需处于模块顶层。 import 命令会提升到整个模块的头部,首先执行。

    53810编辑于 2023-10-20
  • 来自专栏计算机视觉理论及其实现

    函数编程模块(二)、functools模块

    functools模块可以作用于所有的可以被调用的对象,包括函数 定义了__call__方法的类等 1、functools.cmp_to_key(func) 将比较函数(接受两个参数,通过比较两个参数的大小返回负值 sorted(iterable, functools.cmp_to_key(locale.strcoll)) def cmp1(n1, n2): return n1 - n2 a = [1, 6, partialmethod(set_state, False) ... >>> c = Cell() >>> c.alive False >>> c.set_alive() >>> c.alive True 6

    40310编辑于 2023-10-07
  • 来自专栏bug收集

    【Python系列】 6. 模块

    今日分享: 【Python系列】 6. 模块 ---- 01 模块的概念 模块是最高级别的程序组织单元,它将程序代码和数据封装起来以便重用。 每一个文件都是一个模块,并且模块导入其他模块之后就可以使用导入模块定义的变量名。 python的模块导入与c 中的#include不一样。 执行模块的代码来创建其所定义的对象 模块会存储到一个名为sys.modules的表中 02 定义模块 只要文本编辑器,把一些Python 代码输入到文本中,然后以“.py"为后缀名进行保存,任何此类文件都会被自动认为是 Python模块 包的使用 import 模块名 as 变量名 import 使一个变量名引用整个模块对象 from 模块名 import * 或具体属性 from dir1.dir2.mod '__main__' 如果文件被导入,__name__就会改设成客户端所了解的模块名 具体的模块 sys模块 https://blog.csdn.net/qq_38526635/article/details

    30920编辑于 2022-07-22
  • 来自专栏机器学习与统计学

    Python学习 Day 6 模块

    使用模块 编写一个hello的模块 #! import cStringIO as StringIOexcept ImportError: # 导入失败会捕获到ImportError import StringIO 作用域 在一个模块中 ,我们可能会定义很多函数和变量,但有的函数和变量我们希望给别人使用,有的函数和变量我们希望仅仅在模块内部使用。 ): if len(name) > 3: return _private_1(name) else: return _private_2(name) 安装第三方模块 在Python中,安装第三方模块,是通过setuptools这个工具完成的。

    55210发布于 2019-04-10
  • 来自专栏Golang开发

    ES6——模块(module)

    运行时加载 在 ES6 之前,社区制定了一些模块加载方案,最主要的有 CommonJS 和 AMD 两种,前者用于服务器,后者用于浏览器。 = _fs.stat; let exists = _fs.exists; let readfile = _fs.readfile; 静态加载 ES6 模块的设计思想是尽量的静态化,使得编译时就能确定模块的依赖关系 ES6 模块不是对象,而是通过export命令显指定输出的代码,再通过import命令输入。下面代码的是从fs模块加载 3 个方法,其他方法不加载。 这种加载称为“编译时加载”或者静态加载,即 ES6 可以在编译时就完成模块加载,效率要比 CommonJS 模块的加载方式高。 // ES6模块 import { stat, exists, readFile } from 'fs'; export 命令 一个模块就是一个独立的文件,该文件内部的所有变量,外部无法获取。

    1K70发布于 2019-07-15
  • 来自专栏三木的博客

    ES6: 模块编程

    Javascript模块的限制 只能运行于严格模式 模块中的顶级作用域中的变量,不会被自动添加到全局作用域 顶级作用域的this为undefined 导出 如果想让模块中的变量、函数、类被其他模块使用 function print_hello(){}; export default print_hello export { print_hello as default} 导入 如果想使用其他模块中的变量

    15610编辑于 2024-10-09
  • 来自专栏廖雪峰python学习笔记

    Python day6 模块

    模块(Module)Python中,一个.py文件就称之为一个模块,大大提高了代码的可维护性。当一个模块编写完毕,就可以被其他地方引用。 ,非常简单易用模块搜索路径试图import一个模块时,Python会在指定的路径下搜索对应的.py文件,如果找不到,就会报错:搜索路径存放在sys模块的path变量中如果要添加新的目录,两种方法:直接修改 mycompany├─ init.py├─ abc.py└─ xyz.py创建自己的模块时,要注意:模块名要遵循Python变量命名规范,不要使用中文、特殊字符;模块名不要和系统模块名冲突,最好先查看系统是否已存在该模块 ,检查方法是在Python交互环境执行import abc,若成功则说明系统存在此模块使用模块#! if判断将失败,因此,这种if测试可以让一个模块通过命令行运行时执行一些额外的代码,最常见的就是运行测试作用域一个模块中,我们可能会定义很多函数和变量,但有的函数和变量我们希望给别人使用,有的函数和变量我们希望仅仅在模块内部使用公开函数

    23810编辑于 2024-07-31
  • 来自专栏WebJ2EE

    模块化】:ES6 模块

    ES6 规范 1.1. 导出和导入 1.1.1. Default Exports(默认导出) 1.1.2. Named Exports(命名导出) 1.1.3. ES6 规范 1.1. 导出和导入 1.1.1. module) => { // Do something with the module. }); 1.1.6. import.meta import.meta 是一个给 JavaScript 模块暴露特定上下文的元数据属性的对象 它包含了这个模块的信息,比如说这个模块的URL。 import.meta 1.2. 问题就是 原生开发时(不依赖打包工具)你会遇到很多麻烦 1. npm 上多数都是 CJS 的包,需要单独找 ES6 版的包 2. 路径问题太复杂,需要根据运行环境写不同的代码 3.2.

    85510编辑于 2022-03-30
  • 来自专栏零域Blog

    ES6中的模块

    在网上了解了ES6模块的一个基本机制,所以记录一下笔记。 ES6模块不会重复执行 一个模块无论被多少个地方引用,引用多少次,模块内部始终只执行一次。 ES6模块输出值的引用 在ES6中,导出输出的值会动态关联模块中的值: // count.js let count = 0 let add = function () { count ++ } export ES6模块循环依赖 import 会优先执行,跟位置无关 // a.js console.log("a.js") import { b } from ". 感觉CommonJS的加载方式套用在ES6,ES6的加载方式套用在CommonJS都能说的通。。CommonJS模块不也是只会加载一次嘛,套用在ES6感觉都没毛病。。。 但是,ES6可以执行上面的代码,a.js之所以能够执行,原因就在于ES6加载的变量都是动态引用其所在模块的。只要引用存在,代码就能执行。

    41910编辑于 2022-03-21
  • 来自专栏Python基础、进阶与实战

    Python基础-6 模块和包

    6.模块和包 模块modules 在之前的程序里,你可能用过类似from math import pi的语句来导入变量或函数。这其实就是在使用模块。 使用模块的好处:模块化,每个模块实现相关的功能;避免文件过长和混乱。 创建模块 新建一个文件(文件名为模块名.py),在文件里写程序。 这样模块就创建好了。 使用模块 使用模块通过import语句导入模块中的变量定义、函数等可执行语句等。 例,使用模块tri.f。 在tri_f.py同级目录下创建test.py。 注意:如果不是同级目录,解释器会找不到,需要在sys.path中添加查找路径,如 import sys sys.path.append(r'D:\PY_TEST\pythonProject\6modules 总结一下,Import的用法: # 从模块导入特定函数 from 模块 import 函数 # 导入模块 import 模块 # 给模块起别名 import 模块 as 别名 # (不推荐)从模块导入全部函数

    58220编辑于 2022-12-06
  • 来自专栏Langchain

    【LangChain系列6】【Agent模块详解】

    总结: LangChain是一个用于开发由LLM支持的应用程序的框架,通过提供标准化且丰富的模块抽象,构建LLM的输入输出规范,主要是利用其核心概念chains,可以灵活地链接整个应用开发流程。 (即,其中的每个模块抽象,都是源于对大模型的深入理解和实践经验,由许多开发者提供出来的标准化流程和解决方案的抽象,再通过灵活的模块化组合,才得到了langchain)添加描述1-2、LangChain抽象出来的核心模块想象一下 由上边的内容,引出LangChain抽象的一些核心模块:LangChain通过模块化的方式去高级抽象LLM在不同场景下的能力,其中LangChain抽象出的最重要的核心模块如下:‘Model I/O : 包含输入模版,模型本身和格式化输出;Retrieval :检索外部数据,然后在执行生成步骤时将其传递到 LLM,包括文档加载、切割、Embedding等;Chains :链条,LangChain框架中最重要的模块 ,链接多个模块协同构建应用,是实际运作很多功能的高级抽象;Memory : 记忆模块,以各种方式构建历史信息,维护有关实体及其关系的信息;Agents : 目前最热门的Agents开发实践,未来能够真正实现通用人工智能的落地方案

    2.8K11编辑于 2025-01-13
  • 来自专栏九彩拼盘的叨叨叨

    ES6 模块写法示例

    模块导出 导出默认 export default { foo: 'bar' }// CommonJS module.exports = { foo: 'bar' } 导出带名字的 export var foo = 'bar' // CommonJS module.exports.foo = 'bar' export var baz = 'ponyfoo' 模块导入 导入默认的 import _ from 参考 ES6 Modules in Depth ECMAScript 6 modules: the final syntax

    49530发布于 2018-08-24
  • 来自专栏小丞前端库

    ES6模块

    模块化 ES6模块化原理 使用闭包封装了私有变量和方法,暴露一个接口供其他部分调用 <script> let module = (function(){ const moduleList msq', price: 78 }] console.log(tools.max(data,"price")); }) </script> 模块化的使用 /*导出*/ let title = 'houdun'; let show = function() { console.log(123); } export {title , show} 模块会延迟解析 ,只解析一次 每个模块都有自己的独立作用域,只通过export来暴露端口 批量打包 import * as api from "/tools.js"; api.show() 返回的api是对象 通过将所有的模块引入到一个index模块中,最后再一次导出index模块 为了避免导出现多个模块中有重复命名的问题,将每个模块通过批量导出的方法,引入到index中,原理就是批量导出返回的是对象

    65910发布于 2021-08-16
  • 来自专栏python3

    #6 ipdb模块源代码解读

    ,你会发现每一个模块基本是都是两个文件夹,一个文件夹是模块本身,另一个是以info结尾的文件夹,下面以ipdb模块讲解: ipdb 文件夹 这个文件夹里面存放着ipdb模块的源代码,里面有  __init # Redistributable under the revised BSD license 5 # https://opensource.org/licenses/BSD-3-Clause 6 Redistributable under the revised BSD license 5 # https://opensource.org/licenses/BSD-3-Clause 6 currently into an embedded ipython shell""the configuration will not be loaded." 5.使用当前IPython的主题和颜色 6. __main__ import post_mortem 6 7 8 def update_stdout(): 9 # setup stdout to ensure output is

    1.1K30发布于 2020-01-17
  • 来自专栏小鑫同学编程历险记

    ES6模块导出&导入

    导出变量or常量 let language = 'Java' const address = ['北京', '上海', '广东', '深圳'] export { language, address } 导出函数 & 使用as重命名 function log(content) { console.info(content) } const logwarn = (content) => { console.warn(content) } export { log

    61720编辑于 2022-12-24
  • 来自专栏前端桃园

    ES6之路之模块详解

    简介 何为模块 一个模块只不过是一个写在文件中的 JavaScript 代码块。 模块中的函数或变量不可用,除非模块文件导出它们。 为什么要使用模块 增加可维护性:由于每个模块都是独立的,每个人写的代码是不会相互影响的,在维护代码的时候很好排查是哪个模块出错。 导入模块 导入的模块可以理解为是生产者(或者服务的提供者),而使用导入的模块模块就是消费者。 当导入绑定的时候,绑定类似于使用了 const 定义,意味着不能定义相同的变量名,但是没有暂时性死区特性(但是在 深入理解ES6 这本书里面说是有暂时性死区限制,我在 chrome 上测试了的,读者希望也去试下 动态关联 所谓的动态关联,其实就是一种绑定关系, 这是 ES6 非常重要的特性,一定仔细阅读。 在 ES6模块中,输出的不是对象的拷贝,不管是引用类型还是基本类型, 都是动态关联模块中的值,。

    81130发布于 2018-06-27
  • 来自专栏码力全开

    ES6 模块化入门

    ES6 模块系统 在 ES6 之前,我们已经知道了 RequireJS,AngularJS 的依赖注入,以及 CommonJS,具体可以看笔者的上一篇文章《JS模块化历史简介》。 通过这篇文章,我们将看到 export 和 import 语句,以及 ES6 模块是怎么与 CommonJS 模块兼容的。 严格模式 在 ES6 模块系统中,严格模式是默认开启的。 下面是 MDN上关于严格模式的解释:严格模式 变量必须显声明 函数的形参必须有唯一的名称(否则会报语法错误) 不能使用with 给只读的属性赋值会报错 像 00840 这样的八进制数字会报语法错误 试图 ,ES6 模块也是暴露 API 的文件。 这其中的一个好处就是 CommonJS 和 ES6 模块之间是兼容的,即我们可以在 ES6 模块中直接写 CommonJS 的语法。

    1.1K20发布于 2019-11-06
  • 来自专栏烂笔头

    Python标准库笔记(6) — struct模块

    目录[-] 该模块作用是完成Python数值和C语言结构体的Python字符串形式间的转换。这可以用于处理存储在文件中或从网络连接中存储的二进制数据,以及其他数据源。 用途: 在Python基本数据类型和二进制数据之间进行转换 struct模块提供了用于在字节字符串和Python原生数据类型之间转换函数,比如数字和字符串。 模块函数和Struct类 它除了提供一个Struct类之外,还有许多模块级的函数用于处理结构化的值。 通常实例化Struct类,调用类方法来完成转换,比直接调用模块函数有效的多。下面的例子都是使用Struct类。 (4) f float float 4 (5) d double float 8 (5) s char[] bytes p char[] bytes P void * integer (6)

    1.6K50发布于 2018-03-20
领券