返回顶部
首页 > 资讯 > 后端开发 > Python >Python中的typing模块怎么用
  • 640
分享到

Python中的typing模块怎么用

2023-06-26 04:06:12 640人浏览 八月长安

Python 官方文档:入门教程 => 点击学习

摘要

本篇内容介绍了“python中的typing模块怎么用”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!在Sublime Text中支持Pyth

本篇内容介绍了“python中的typing模块怎么用”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!

在Sublime Text中支持Python运行

在平时工作中,我们通常用PyCharm开发Python工程,也可以用Vim编辑和查看Python脚本。但是,如果我们仅仅想创造一个单独的脚本来实现某些功能,那么用PyCharm会显得大题小做,用Vim又不方便编辑。这时候,我们可以借助文本编辑器,比如Sublime Text,来实现Python脚本的编辑和运行。

Sublime Text是Mac系统支持的文本编辑器,Notepad++不支持Mac系统。

如果我们想在Sublime Text中支持Python运行,需要做一些设置。

打开Sublime Text的Tools,选择Build System中的New Build System…,会出现脚本,我们修改其中的内容如下:

{    "cmd": ["D:/Anaconda3/python3.7.exe","-u","$file"],}

其中cmd中对应的列表的第一项为Python的安装路径。编辑完后,在默认位置保存文件,比如刚才的文件名为Python3.7.sublime-build

这时候我们再去看Tools中,已经出现了刚才编辑的Python3.7的环境,选择该项,我们就可以在Sublime Text中运行Python脚本了。

Python中的typing模块怎么用

我们示例的Python脚本为test.py,代码如下:

import numpy as npmatrix = np.array([[0, 1, 2],                   [2, 4, 5]                   ])print(matrix[1, 2])print("Hello world from Sublime Text.")

点击Tools中的Build或者Ctrl+B运行程序,结果如下:

Python中的typing模块怎么用

同样,在windows系统中也可以这样设置,方便又使用。

至于Notepad++是否有相似的功能,还有待研究。  

在Mac系统的iTerm2中支持查看图片

iTerm2是Mac系统很好用的终端工具,本文不过多介绍iTerm2,而是介绍如何直接在iTerm2中查看图片,这样可以方便我们在终端直接查看图片。

我们使用的工具为imGCat

在iTerm2中新建shell脚本imgcat.sh,编辑完文件后保存,并用chmod u+x imgcat.sh赋予执行权限。

这样就可以直接查看图片了。什么,这么简单?对,就是这么简单!

在笔者电脑上的效果如下:

Python中的typing模块怎么用

Python中的typing模块介绍

typing模块是Python中提供类型支持的模块,它的主要作用为:

类型检查,防止运行时出现参数和返回值类型不符合。

作为开发文档附加说明,方便使用者调用时传入和返回参数类型。

该模块加入后并不会影响程序的运行,不会报正式的错误,只有提醒。

简单来说,使用typing模块我们可以对参数的类型做注释并检查,它不会影响程序运行,而这是提醒。总所周知,在Python中调用函数或变量时,不需要对参数或变量进行类型说明,这样虽然方便程序编写,但不利于程序阅读,有了typing模块,可以增加程序的可阅读性,同时也能提升代码的可维护性和健壮性。

举个简单的例子,我们实现一个函数digits_sum,输入参数为字符串,比如”352″,输出该数字上的各个数位上的数字之和,比如10。有了typing模块,我们的代码如类似如下:

from typing import *# 创建函数def digits_sum(num:str) -> int:    digits_arr = map(lambda x: int(x), num)    return sum(digits_arr)# 测试num = "352"result = digits_sum(num=num)print(result)

输出结果为10。对上面的程序做点说明,其中第一句中的from typing import *可以不必写,因为str,int都是Python内置的数据类型。函数声明为def digits_sum(num:str) -> int,括号内的num类型为str,箭头后的int表示函数的输出结果数据类型为int。

我们再给出一个例子。函数dict_multipy,输入为字典,如果key值对应的value的数据类型为float或者int型,则乘以2,否则跳过,那么输出也为字典。程序如下:

from typing import Dict, Any# 创建函数def dict_multipy(d: Dict[str, Any]) -> Dict[str, float or int]:    new_dict = {}    for k, v in d.items():        if isinstance(v, (float, int)):            new_dict[k] = v * 2    return new_dict# 测试d = {"no": "100", "age": 12, "work_year": 3, "name": "JC"}new_d = dict_multipy(d=d)print(new_d)Python

输出结果为{‘age’: 24, ‘work_year’: 6}。在函数声明中,d为字典,其key值为str,val为任意类型(Any),输出为字典,key值为str,val值为float或者int。

当然,我们还可以在typing创建别名或者新的数据类型,以下就是一个例子。

from typing import List# 取List[float]别名为VectorVector = List[float]def scale(Scalar: float, vector: Vector) -> Vector:    return [scalar * num for num in vector]new_vector = scale(2.0, [1.0, -4.2, 5.4])

“Python中的typing模块怎么用”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注编程网网站,小编将为大家输出更多高质量的实用文章!

--结束END--

本文标题: Python中的typing模块怎么用

本文链接: https://lsjlt.com/news/306775.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • Python中的typing模块怎么用
    本篇内容介绍了“Python中的typing模块怎么用”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!在Sublime Text中支持Pyth...
    99+
    2023-06-26
  • Python中typing模块怎么使用
    这篇文章主要介绍“Python中typing模块怎么使用”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“Python中typing模块怎么使用”文章能帮助大家解决问题。typing库一、 简介Pyth...
    99+
    2023-06-30
  • Python中typing模块的具体使用
    目录typing库一、 简介二、 别名1、 类型别名2、 NewType3、 可调用对象三、 泛型支持1、集合类型2、 抽象基类3、 泛型4、 Any5、 特殊形式5.1 Type5...
    99+
    2024-04-02
  • python typing模块--类型提示支持
    目录1、typing介绍 2、typing的作用3、常用类型 3.1 代码示例4、typing模块的其他用法4.1 类型别名 4.2 NewType 4.3 Callable 4.4...
    99+
    2024-04-02
  • Python中的collections集合与typing数据类型模块
    目录一、collections集合1、namedtuple:命名tuple对象2、deque:双端队列3、defaultdict:默认字典4、OrderedDict:顺序字典5、Co...
    99+
    2024-04-02
  • python如何使用typing模块加强代码的可读性
    这篇文章主要为大家展示了“python如何使用typing模块加强代码的可读性”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“python如何使用typing模块加强代码的可读性”这篇文章吧。一、...
    99+
    2023-06-22
  • python中的sys模块和os模块怎么用
    今天小编给大家分享一下python中的sys模块和os模块怎么用的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。1.sys模块...
    99+
    2023-06-29
  • Python中的time模块和calendar模块怎么用
    这篇文章将为大家详细讲解有关Python中的time模块和calendar模块怎么用,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。在Python中对时间和日期的处理方式有很多,其中转换日期是最常见的一个功...
    99+
    2023-06-25
  • python使用typing模块加强代码的可读性(实战演示)
    一、需求描述 没有类型提示的编程,总觉得不太方便,好在python3.5以后内置了typing模块。 typing模块会对函数和变量类型进行注解。 但是Python 运行时不强制执行...
    99+
    2024-04-02
  • 一篇文章带你了解python中的typing模块和类型注解
    目录typing模块DictListTupleset/AbstractSetSequenceNoReturnAnyTypeVarNewTypeCallableUnionOp...
    99+
    2024-04-02
  • Python中math模块和cmath模块怎么应用
    这篇文章主要介绍了Python中math模块和cmath模块怎么应用的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇Python中math模块和cmath模块怎么应用文章都会有所收获,下面我们一起来看看吧。cma...
    99+
    2023-06-27
  • python中os模块和sys模块怎么使用
    今天小编给大家分享一下python中os模块和sys模块怎么使用的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。一、os模块o...
    99+
    2023-07-05
  • python中pymsql模块怎么用
    这篇文章主要介绍了python中pymsql模块怎么用,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。一、pymysql模块的简介。pymys...
    99+
    2024-04-02
  • python中Itertools模块怎么用
    小编给大家分享一下python中Itertools模块怎么用,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!Itertools 模...
    99+
    2024-04-02
  • Python中os模块怎么用
    小编给大家分享一下Python中os模块怎么用,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!前言OS模块虽然基础的时候已经学过了,但是谁让本人属于那种不用立马就忘...
    99+
    2023-06-14
  • Python中random模块怎么用
    这篇文章给大家分享的是有关Python中random模块怎么用的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。1.随机取小数:import randomprint(random.runiform(a,b)...
    99+
    2023-06-22
  • Python中csv模块怎么用
    这篇文章主要介绍了Python中csv模块怎么用,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。1、csv简介CSV (Comma Separated Values) ,即逗号...
    99+
    2023-06-20
  • python中requests模块怎么用
    这篇文章将为大家详细讲解有关python中requests模块怎么用,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。Requests模块是一个用于网络请求的模块,主要用来模拟浏览器发请求。其实类似的模块有很...
    99+
    2023-06-29
  • python中Fabric模块怎么用
    这篇文章给大家分享的是有关python中Fabric模块怎么用的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。基础一:#!/usr/bin/env pythonfrom fabric.api import *env...
    99+
    2023-06-04
  • Python中的pprint模块怎么使用
    本篇内容主要讲解“Python中的pprint模块怎么使用”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Python中的pprint模块怎么使用”吧!一. pprint美观打印数据结构pprin...
    99+
    2023-06-21
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作