博客
关于我
Nim教程【十二】
阅读量:794 次
发布时间:2023-02-16

本文共 1178 字,大约阅读时间需要 3 分钟。

排除指定符号

在大多数情况下,我们使用import语句来导入模块中的符号。如果你希望排除某些特定的符号,可以使用except子句。比如,以下代码可以选择性地导入mymodule模块中的符号: ```python import mymodule except y ```这样,只有mymodule模块中的y符号会被导入,其他符号则不会。如果需要排除多个符号,可以用逗号分隔: ```python import mymodule except y, z ```

导入指定符号

除了全导入模块中的所有符号外,我们还可以使用from语句来选择性地导入特定的符号。例如: ```python from mymodule import x, y, z ```这样,只有mymodule模块中的x、y、z三个符号会被导入。

强行名称空间限定

在某些情况下,你可能希望确保导入的符号在当前名称空间中带有模块前缀。例如: ```python from mymodule import x # 当前模块使用x时,必须带上mymodule前缀才能使用 x = mymodule.x() ```如果模块名称较长,可以通过给模块起别名来简化使用。例如: ```python from mymodule as m import x # 现在m就是mymodule的别名,可以直接使用m.x() x = m.x() ```

include语句

include语句与from语句有本质区别。include语句会在编译时将多个文件合并成一个文件,这对于将大型文件划分为多个小文件非常有用。例如: ```python include fileA, fileB, fileC ```

对象

在Nim语言中,对象和元组有相似之处,但对象提供了更多功能。对象支持继承和信息隐藏,构造方法只能在对象内部使用。例如: ```nim type Person = ref RootObj name*: string age: int Student = ref Person id: int student = Student(name: "Anton", age: 5, id: 2) ```标记为*的属性(如name*)可以被外部访问到,而没有*的属性则隐藏了。对象的类型只能通过type定义,Nim支持单继承,但不支持多继承。

自引用对象类型

对象和元组都可以创建复杂的数据结构,甚至支持自引用。例如: ```nim type Node = ref NodeObj NodeObj = object left, right: Node sym: ref Sym Sym = object name: string line: int code: PNode ```这种自引用类型在某些应用中非常有用。

转载地址:http://jdjfk.baihongyu.com/

你可能感兴趣的文章
nginx+php的搭建
查看>>
nginx+tomcat+memcached
查看>>
Nginx+Tomcat实现动静分离
查看>>
nginx+Tomcat性能监控
查看>>
nginx+uwsgi+django
查看>>
nginx+vsftp搭建图片服务器
查看>>
Nginx-http-flv-module流媒体服务器搭建+模拟推流+flv.js在前端html和Vue中播放HTTP-FLV视频流
查看>>
nginx-vts + prometheus 监控nginx
查看>>
nginx: [emerg] getpwnam(“www”) failed 错误处理方法
查看>>
nginx:Error ./configure: error: the HTTP rewrite module requires the PCRE library
查看>>
Nginx、HAProxy、LVS
查看>>
Nginx下配置codeigniter框架方法
查看>>
Nginx中使用expires指令实现配置浏览器缓存
查看>>
Nginx之二:nginx.conf简单配置(参数详解)
查看>>
Nginx代理websocket配置(解决websocket异常断开连接tcp连接不断问题)
查看>>
Nginx代理初探
查看>>
nginx代理地图服务--离线部署地图服务(地图数据篇.4)
查看>>
Nginx代理外网映射
查看>>
Nginx代理模式下 log-format 获取客户端真实IP
查看>>
Nginx代理解决跨域问题(导致图片只能预览不能下载)
查看>>