01 Python基础语法-1

1,Python语言

1.1 Python发展

 

1989年圣诞节期间,为了打发无聊的时间,荷兰人Guido van Rossum(数学、计算机双硕士,2005年 加入Google,2013年加入DropBox),决心开发一种新的解释性脚本语言。

1991年初发布了第一个公开发行版。由于他是英国BBC喜剧《Monty Python's Flying Circus》的忠实 粉丝,因此为这门语言取名Python。

Python目前已经成为很多大学的编程课语言。甚至在国内一些考试已经引入了Python。科学计算方 面、运维领域Python几乎已经成为最主要的编程语言,拥有非常方便快捷开发的库。

Python的哲学,可以使用import this 查看Python之禅。

1.2 Python的版本

目前企业中使用的主要版本还是2.x和3.x。

2.x最后一个版本是2.7,很多企业为了兼容老项目依然在维护。Python2将在2019年底不在支持,官方 还提供了一个倒计时网站https://pythonclock.org/。

3.x还在不断的扩充发展,当前主流版本是3.6。

2015年9月发布3.5,2016年12月发布3.6,2018年6月发布3.7,2019年10月发布3.8.0。

1.2.1 Python2和Python3的区别

语句函数化,例如print(1,2)打印出1 2,但是2.x中意思是print语句打印元组,3.x中意思是函数的2个参数

整除,例如1/2和1//2,3.x版本中/为自然除 

3.x中raw_input重命名为input,不再使用raw_input

round函数,在3.x中i.5的取整变为距离最近的偶数 

3.x字符串统一使用Unicode 

异常的捕获、抛出的语法改变

早几年,各主要国内外大公司都已经迁移到了Python3。很多重要的Python第三方库也陆续停止了对 Python2的支持,所以,Python3已经是必须学习的版本。2018年Python3的使用比例已经超过了 85%。

在公司内,往往老项目维护维持2.x版本暂不升级,新项目使用3.x开发。

开发时,假如使用3.5.8,部署时应尽量保持一致,不要随意升级版本,更不要降低版本。

不要迷信版本,学会一个版本,好好学会一门语言,其他都不是问题。当然,也不要迷信语言。在最合适的领域使用最合适的语言。

2,环境安装

官方网站下载不同平台。https://www.python.org/downloads/

2.1 Linux环境安装

如果是Ubuntu等桌面系统,都已经更新到了Python较新的版本。但多数生产环境使用的还是红帽系 统。

CentOS7默认还是Python2.7,而开发环境如果是高版本Python就带来了问题。为了不破坏当前系统使 用,甚至以后为了多个Python项目部署(这些项目使用不同Python解释器版本),建议使用多版本工 具。

也可以考虑容器部署Python应用程序。

2.1.1 pyenv多版本

官网 https://github.com/pyenv/pyenv

快捷安装 https://github.com/pyenv/pyenv#the-automatic-installer

# yum install git curl

python编译依赖如下
# yum install gcc make patch gdbm-devel openssl-devel sqlite-devel readline-devel zlib-devel bzip2-devel

创建普通用户
# useradd python # su - python

在python用户下安装
$ curl -L https://github.com/pyenv/pyenv-installer/raw/master/bin/pyenv-installer | bash

由于某些原因,浏览器可以访问,大家自行下载保存为shell脚本执行 
https://raw.githubusercontent.com/pyenv/pyenv-installer/master/bin/pyenv-installer
或者使用项目源码文件:
https://github.com/pyenv/pyenv-installer/blob/master/bin/pyenv-installer

以后更新pyenv使用 
$ pyenv update

安装完,按照提示处理,把下面的脚本放到当前用户的.bashrc文件末尾:

export PATH="/home/python/.pyenv/bin:$PATH"
eval "$(pyenv init -)"
eval "$(pyenv virtualenv-init -)"

2.1.2 缓存文件

由于连接国外网站速度太慢,可以先下载好将要安装的Python版本的安装包,直接放置在 ~/.pyenv/cache目录下,再进行安装。此cache目录不存在,请自行创建。

cd /home/python/.pyenv
mkdir cache

2.1.3 安装Python多版本

$ pyenv install -l
$ pyenv install 3.6.11 -vvv 
$ pyenv install 3.7.7 -vvv
$ pyenv version  当前python版本,system表示当前操作系统使用的版本 
$ pyenv versions 查看所有已经安装版本,*星号表示当前版本

pyenv是源代码编译安装Python解释器,所以一定要安装gcc等依赖.

2.1.4 创建虚拟环境

由于不同项目,或使用不同Python版本,或使用同版本Python但使用不同版本库,很难将它们部署在 一起,所以,应该使用不同的虚拟环境隔离部署。

使用pyenv local命令建立一个目录和一个Python版本或虚拟版本之间的关系,该目录的子孙目录默认 也继承这个版本。

$ mkdir -p projects/test3611 
$ cd projects/test3611/
[python@nodex test369]$ pyenv virtualenv 3.6.9 py3611 

[python@nodex test369]$ pyenv local py3611

(py3611) [python@nodex test369]$ python -V
Python 3.6.11

(py3611) [python@nodex test369]$ pyenv version
py3611 (set by /home/python/projects/test369/.python-version)

2.2 windows环境安装

下载Windows x86-64 executable installer ,按照提示安装即可。 勾选增加PATH路径,简单安装直接点击"Install Now"。

 

打开Windows命令行

$ python -V 
Python 3.7.4
$ pip -V
pip 19.0.3 (python 3.7)
pip是Python包管理器,以后安装Python第三方包都需要它,它从3.x开始就集成在Python安装包里面 了。
setuptools是 Python Enterprise Application Kit(PEAK)的一个副项目,它 是一组Python的 distutilsde工具的增强工具(适用于 Python 2.3.5 以上的版本,64 位平台则适用于 Python 2.4 以上的版本),可以让程序员更方便的创建和发布 Python 包,特别是那些对其它包具有依赖性的状况

3 pip通用配置

windows配置文件:~/pip/pip.ini 。windows家目录,在“运行”中键入.

Linux配置文件:~/.pip/pip.conf内容,可参照 http://mirrors.aliyun.com的pypi帮助

[global]
index-url = https://mirrors.aliyun.com/pypi/simple/

[install] 
trusted-host=mirrors.aliyun.com
pip install pkgname  命令,是安装python包的命令

3.1 按装ipython

ipython:是增强的交互式Python命令行工具

$ pip list
$ pip install ipython 
$ ipython

3.2 Jupyter

是基于WEB的交互式笔记本,其中可以非常方便的使用Python。

安装Jupyter,也会依赖安装ipython的

$ pip install jupyter
$ jupyter notebook help
$ jupyter notebook --ip=0.0.0.0 --no-browser
$ ss -tanl
(py3611) [python@centos-python test3611]$ jupyter notebook --ip=0.0.0.0 --port=8888

# 设置jupyter登陆密码:
(py3611) [python@centos-python test3611]$ jupyter notebook password 

[I 09:59:24.994 NotebookApp] 启动notebooks 在本地路径: /home/python/project/test3611
[I 09:59:24.994 NotebookApp] Jupyter Notebook 6.1.4 is running at:
[I 09:59:24.994 NotebookApp] http://centos-python:8888/
[I 09:59:24.994 NotebookApp] 使用control-c停止此服务器并关闭所有内核(两次跳过确认).
[W 09:59:25.008 NotebookApp] 没有找到web浏览器: could not locate runnable browser.

使用外部浏览器登陆

 

常用快捷键:

  • a之前插入代码块、b之后插入代码块
  • L 增加行号
  • 运行代码块 shift + enter,选择下面的代码块
  • 运行当前代码块 ctrl + enter

4, 导出包

项目中开发完毕,要部署前,可以先导出当前使用的各种包的版本。在目标机器上安装这些包。

(py369) [python@node web]$ pip freeze > requirement
(py369) [python@node web]$ mkdir -p ~/magedu/projects/pro1 (py369) [python@node web]$ cd ~/magedu/projects/pro1 [python@node pro1]$ pyenv install --list
[python@node pro1]$ pyenv virtualenv 3.6.9 m369 [python@node pro1]$ pyenv local m369
(m369) [python@node pro1]$ mv ../web/requirement ./
(m369) [python@node pro1]$ pip install -r requirement

5,Pycharm安装

官网下载Pycharm社区版,足够开发项目使用了。 按照软件安装向导提示安装即可。

6,查阅帮助

IPython中:

  • 使用help(keyword),keyword可以是变量、对象、类、函数等
  • keyword?
  • keyword??
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值