如何提高Python开发效率,有什么好用的工具
Admin 2022-09-27 群英技术资讯 1334 次浏览
在实际应用中,我们有时候会遇到“如何提高Python开发效率,有什么好用的工具”这样的问题,我们该怎样来处理呢?下文给大家介绍了解决方法,希望这篇“如何提高Python开发效率,有什么好用的工具”文章能帮助大家解决问题。
本文将介绍的三个小工具如下:
Sublime Text中支持Python运行;Python的typing模块介绍。详细内容介绍如下。
在平时工作中,我们通常用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脚本为test.py,代码如下:
import numpy as np
matrix = np.array([[0, 1, 2],
[2, 4, 5]
])
print(matrix[1, 2])
print("Hello world from Sublime Text.")
点击Tools中的Build或者Ctrl+B运行程序,结果如下:
//img.jbzj.com/file_images/article/202201/20221269085023324.png?202202694039
同样,在Windows系统中也可以这样设置,方便又使用。
至于Notepad++是否有相似的功能,还有待研究。
iTerm2是Mac系统很好用的终端工具,本文不过多介绍iTerm2,而是介绍如何直接在iTerm2中查看图片,这样可以方便我们在终端直接查看图片。
我们使用的工具为imgcat。
在iTerm2中新建shell脚本imgcat.sh,里面的内容可以参考网址:https://www.iterm2.com/utilities/imgcat,编辑完文件后保存,并用chmod u+x imgcat.sh赋予执行权限。
这样就可以直接查看图片了。什么,这么简单?对,就是这么简单!
在笔者电脑上的效果如下:

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创建别名或者新的数据类型,以下就是一个例子。更多的使用方法可以参考typing模块的官方网址:https://docs.python.org/zh-cn/3.6/library/typing.html。
from typing import List # 取List[float]别名为Vector Vector = 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])
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。
猜你喜欢
这篇文章主要介绍了pandas 如何保存数据到excel,csv的实现方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
这篇文章主要介绍了练习深度学习的一个小工程,代码简单明确,用来作为学习深度学习的练习很适合,对于有需要的朋友可以参考下,希望大家可以体验到深度学习带来的收获
这篇文章给大家分享的是有关django与ajax怎样实现交互的内容,很多新手django与ajax交互可能不是很了解,因此分享给大家做个参考,有这方面学习需要的朋友接下来一起跟随小编看看吧。
在 Python 整型对象所存储的位置是不同的, 有一些是一直存储在某个存储里面, 而其它的, 则在使用时开辟出空间 说这句话的理由, 可以
在本文中,我们将介绍10个示例,以掌握如何使用用于Python的Seaborn库创建图表。
成为群英会员,开启智能安全云计算之旅
立即注册关注或联系群英网络
7x24小时售前:400-678-4567
7x24小时售后:0668-2555666
24小时QQ客服
群英微信公众号
CNNIC域名投诉举报处理平台
服务电话:010-58813000
服务邮箱:service@cnnic.cn
投诉与建议:0668-2555555
Copyright © QY Network Company Ltd. All Rights Reserved. 2003-2020 群英 版权所有
增值电信经营许可证 : B1.B2-20140078 ICP核准(ICP备案)粤ICP备09006778号 域名注册商资质 粤 D3.1-20240008