Python从门到精通(一):基础-01-开发环境配置(python的配置环境)

网友投稿 274 2022-08-28


Python从门到精通(一):基础-01-开发环境配置(python的配置环境)

时至今日,Python的应用场景应用的越来越广泛,比如运维、AI学习等。可以认为是一项必要掌握的技能了。笔者会新开一个系列课程,真真正正的从0开始熟悉这门语言。整个系列会涉及3大块内容:1、Python基础;2、用ptyhon实现笔者的另一个系列(grpc分布式框架)中的服务程序;3、AI机器学习的内容。

笔者的开发环境:macos、pycharm、anaconda, python版本:python3.9

一、安装

这里会介绍几种安装方式,强烈建议用anaconda管理然后集成到pycharm中。

1.1、命令行安装

使用brew安装,安装后的目录在:/usr/local/Cellar目录中,执行search命令:

然后选择一个版本,笔者安装了3.8和3.9两个版本,建议安装3.9版本。

#安装pythonbrew search pythonbrew install python

设置环境变量

PATH="/Library/Frameworks/Python.framework/Versions/3.9/bin:${PATH}"export PATHalias python="/Library/Frameworks/Python.framework/Versions/3.9/bin/python3.9"source ~/.bash_profile

安装常用的库(类似Java的第三方jar包),比如numpy包,则可用如下命令

#通过pip安装python库pip3 install --user url 私有包安装到site-packages下只供本项目使用pip3 install pkg 全局安装

最后,在命令行中输入ptyhon或python3,可看到版本信息并进入到python环境,如下:

1.2、通过anaconda安装(推荐)

这是一个Python环境管理软件,自带了常用的三方库和一些必要的软件(多用于AI编程相关)。这个不用太多说了,网上找对应的版本,安装。然后点左侧【environments】再【create】新建或【clone】一个现有环境,如下图所示,在最

再选择【home】查看可用的软件,已安装的可以直接运行或选择【install】进行安装(有时安装会比较慢,建议多点几次)

二、与IDEA集成

前提:安装了pycharm软件并用anaconda设置了新环境,笔者的环境叫【liudong】

2.1、设置新项目默认解释器

找开pycharm,选择文件->新项目设置,如下图,在python解释器选择上面创建的环境,也可通过右侧的齿轮新建一个环境。

后续我们可以在pycharm也可以在anaconda中管理jar,效果是一样的

三、第一个py程序

3.1、新建python项目

解释器说明:Virtualenv环境:相当于一个私有环境,在项目中会创建一个文件夹,里面保存了与此项目相关的库;Conda环境:相当于一个公有环境,见上;系统解释器:在一些操作系统中会默认带一个ptyhon环境,不建议使用;Pipenv环境:用pip来管理库包等,见1.1节中描述的安装库命令;

3.2、第一个python程序

笔者创建的项目如下:

我们在app/base目录下新建一个helloworld.py文件,创建第一个py程序。

print("hello world")

右键运行,在控制台会输出如下:

/Users/liudong/.conda/envs/liudong/bin/python /Users/liudong/personCode/python/pythonTest/app/base/helloworld.pyhello world进程已结束,退出代码0

class Test(object): """docstring for Test""" def __init__(self, arg=None): super(Test, self).__init__() self.arg = arg def say_hi(self): print 'hello wrold'def main(): test = Test() //1. 首先实例化test类 test.say_hi() //2. 再调用类的方法if __name__ == '__main__': main()

3.2、单元测试

本节内容稍有点提前了,但还是建议掌握一下。因为在开发大点的工程时不能总是在程序中间打print或是通过写main方法来测试。py也有自己的单元测试方式,一个简单的例子如下:

setUp():准备环境,执行每个测试用例的前置条件tearDown():环境还原,执行每个测试用例的后置条件

def add(a, b): return a+bdef minus(a, b): return a-bimport unittestclass TestDemo(unittest.TestCase): def setUp(self): print ("do something before test : prepare environment.\n") def tearDown(self): print ("do something after test : clean up.\n") def test_add(self): """Test method add(a, b)""" self.assertEqual(3, add(1, 2)) self.assertNotEqual(3, add(2, 2)) @unittest.skip("do't run as not ready") def test_minus_with_skip(self): self.assertEqual(1, minus(3, 2)) self.assertNotEqual(1, minus(3, 2))if __name__ == '__main__': # verbosity=*:默认是1;设为0,则不输出每一个用例的执行结果;2-输出详细的执行结果 unittest.main(verbosity=1)

四、标准库帮助手册

4.1、总体架构

在python中定长不和变长对象两大类,其中变长对象又分为可变和不可变对象两种类型,在python中所有的内置对象都是静态初始化的,其它的对象是在堆上初始化的。对象一旦被创建其内存大小就不可变,所以可变的对象不会维护值而是维护的一个地址指针。

中间:表示python的数据流过程:词法分析,分析源码生成多个token-->语法分析,建立AST-->生成指令集,创建python字节码-->VM环境,执行字节码右侧:内置对象系统、内存分配、运行时状态监视器(负责监视字节码的不同运行时状态)左侧:python内置的大量模块、库和用户自定义的模块

​​英文文档​​​  ​​中文文档​​


版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:【推荐】Python中你必须要知道的IDE工具!(四种常用于python的IDE)
下一篇:python函数执行超时处理的两种方法(python运行超时是什么意思)
相关文章

 发表评论

暂时没有评论,来抢沙发吧~