Python初识

                                                                                Python基础
**(一)初步介绍**                                                                                                          

(1) 编程语言维度:静态语言和动态语言;强类型语言和若类型语言
(2)Python 是一个高层次的结合了解释性、编译性、互动性和面向对象的脚本语言。
(3)Python是一种解释型语言。在程序运行的前一刻,只有源码程序而没有可执行程序。而程序执行到源程序的某一条指令,则会有一个称之为解释程序的外壳程序将源代码转换成二进制代码。 容易移植。
(4)作为动态语言:这意味着,您可以在一个 Python 提示符 >>> 后直接执行代码。
(5)Python 是强类型语言: 这意味着Python支持面向对象的风格或代码封装在对象的编程技术。
(二)Python优点:
1 “优雅”“简单”“明确”。
2 开发效率高。
3 可移植性(避免使用依赖系统的性能)。
4 可扩展性。
6 可切入性
(三)缺点:
1.运行速度慢
2 代码不能加密
3 线程不能利用多CPU问题。
CIL即全局解释其锁(Global interpreter Lock),是计算机程序设计语言解释器用于同步线程的工具,
使得任何时刻仅有一个线程是操作系统的原生线程。在Linux上为Pthread,在window上为 Win
thread,完全由操作系统调度线程的执行。一个python解释器进程内有一条主线程,以及多条用户程
序的执行线程。即使在多核CPU平台上,由于CIL的存在,所以禁止多线程的并行执行。
(四)运维学Python能干啥?
(1)开发各种自动化工具,制定开发各种开源软件。
(2)帮助评估和优化业务技术架构
(3)开发公司的内部办公系统,CRM,网站等
(4)全栈工程师
(五)运维需要考虑的问题
如何高效的适应业务的频繁更新,变更,上线,扩展? 如何在低成本的前提下实现业务并发运算能力的可伸缩式扩展? 如何实现运维人员从被动处理故障到故障防御和故障高度自愈的转换? 如果通过不断优化运维流程、自动化工具来降低运维成本、人工参与度,终实现无人运维?
(六)Python开发环境搭建
可以进入Python官网进行了解以及下载。
Python官网:https://www.python.org/
Python文档下载地址:https://www.python.org/doc/
Windows下环境搭建**
在软件包安装的过程时两种选择,第一种系统选择;第二种自动故意安装,注意“选择环境变量,就后续不用添加“然后正常安装。
Linux下开发环境搭建
(1)上传把并解压对应版本安装包
[root@bogon ~]# tar xf Python-3.7.3.tar.xz
(2)安装python3
[root@bogon Python-3.7.3]# yum install gcc gcc-c++ make zlib* -y
[root@bogon Python-3.7.3]# yum install libffi-devel -y
[root@bogon Python-3.7.3]# ./configure --prefix=/usr/local/python3 (此步需要进入到已经解压的包中)
[root@bogon Python-3.7.3]# make
[root@bogon Python-3.7.3]# make install
(3) 配置执行文件路径
[root@bogon Python-3.7.3]# cd /usr/bin
[root@bogon bin]# mv /usr/bin/python /usr/bin/pythonbak
[root@bogon bin]# ln -fs /usr/local/python3/bin/python3 /usr/bin/python3
(4) 安装完成后测试python3和python2能不能分别调用
(5)修改yum配置
[root@localhost ~]# vim /usr/bin/yum
[root@localhost ~]# vim /usr/libexec/urlgrabber-ext-down
(七)集成开发环境PyCharm
PyCharm 是由 JetBrains 打造的一款 Python IDE,支持 macOS、 Windows、 Linux 系统。
PyCharm 功能 : 调试、语法高亮、Project管理、代码跳转、智能提示、自动完成、单元测试、版本控
制……
PyCharm 下载地址 : https://www.jetbrains.com/pycharm/download/
PyCharm 安装地址:http://www.runoob.com/w3cnote/pycharm-windows-install.html
(八)Python开发虚拟环境搭建
什么是python虚拟环境?
通俗的来讲,虚拟环境就是从电脑独立开辟出来的环境,相当于一个副本或备份,在这个环境你可以安
装私有包,而且不会影响系统中安装的全局Python解释器。
为什么要用虚拟环境?
在实际项目开发中,我们通常会根据自己的需求去下载各种相应的框架库,如Scrapy、Beautiful Soup
等,但是可能每个项目使用的框架库并不一样,或使用框架的版本不一样,这样需要我们根据需求不断
的更新或卸载相应的库。直接怼我们的Python环境操作会让我们的开发环境和项目造成很多不必要的麻
烦,管理也相当混乱。
Windows下安装虚拟环境:
(1)pip install virtualenv
有可能安装失败,需要更新。
(2)新建虚拟环境
virtualenv scrapytest 创建名为 scrapytest 的虚拟环境
virtualenv -p C:…(python安装目录) \python.ext scrapytest
Linux下安装虚拟环境:
{在Linux下则需要在etc下安装 命令
[root@localhost etc]# yum install python-virtualenv}
[root@localhost ~]# virtualenv py2
[root@localhost bin]# virtualenv -p /usr/local/bin/python3 py3
运行虚拟环境***
cd \scrapytest\Scripts
source activate.bat
activate.bat
[root@localhost bin]# source activate
(py2)
[root@localhost bin]# python
退出虚拟环境
deactivate.bat
(py2) [root@localhost bin]# deactivate
(九)脚本式编程
通过脚本参数调运解释器开始执行脚本,知道脚本执行机完毕。当脚本执行完成后,解释器不在有效。
[root@bogon test]# cat hw.py
#/usr/bin/python3
#–coding:utf-8 –
print(“您好,世界!!!”)
[root@bogon test]#
[root@bogon test]# python3 hw.py
您好,世界!!!
(十)交互式编程
交互式编程不需要创建脚本文件,是通过Python解释器的交互模式进行编写代码。
(十一)标识符
在 Python 里,标识符由字母、数字、下划线组成。
在 Python 中,所有标识符可以包括英文、数字以及下划线(_),但不能以数字开头。
Python 中的标识符是区分大小写的。
以下划线开头的标识符是有特殊意义的。以单下划线开头 _foo 的代表不能直接访问的类属性,需通过
类提供的接口进行访问,不能用 from xxx import * 而导入。
以双下划线开头的 __foo 代表类的私有成员,以双下划线开头和结尾的 foo 代表 Python 里特殊方法专
用的标识,如 init() 代表类的构造函数。
Python 可以同一行显示多条语句,方法是用分号 ; 分开,如:
a = “anliu” ;print(a)
anliu
(十二)行与缩进
Python的代码块部使用大括号{}来控制类,函数以及其他逻辑判断。而是用缩进来写模块。
在 Python 的代码块中必须使用相同数目的行首缩进空格数。
建议你在每个缩进层次使用 单个制表符 或 两个空格 或 四个空格 , 切记不能混用
(十三)模块
import 语句 模块的引入
import module1[, module2[,… moduleN]]
当解释器遇到 import 语句,如果模块在当前的搜索路径就会被导入。
搜索路径是一个解释器会先进行搜索的所有目录的列表。如想要导入模块 support.py,需要把命令放在
脚本的顶端:
#Author:Anliu # 导入模块 import support # 现在可以调用模块里包含的函数了 support.print_func(“Runoob”)
一个模块只会被导入一次,无论你执行了多少次。
from…import 语句
Python 的 from 语句让你从模块中导入一个指定的部分到当前命名空间中
例如,要导入模块 fib 的 fibonacci 函数,使用如下语句:
from fib import fibonacci
这个声明不会把整个 fib 模块导入到当前的命名空间中,它只会将 fib 里的 fibonacci 单个引入到执行这
个声明的模块的全局符号表。
from…import* 语句
把一个模块的所有内容全都导入到当前的命名空间也是可行的,只需使用如下声明:
from modname import *
例子
from math import * 将math模块中的所有东西一次性引入。
模块的导入,首先当前目录下查找文件,查找不到再到系统定义的路径下去查找.
.pyc
pyc设什么东西?
我们知道python是一门解释性语言,但是在执行之后,会产生一个.pyc的文件
(十四)解释型语言和编译型语言
计算机是不能够识别高级语言的,所以当我们运行一个高级语言编程的时候,就需要一个“翻译机”来从
事把高级语言变成计算机能读懂的机器语言。这个过程分为两类:一种是编译,一种是解释。
编译型语言在程序执行之前,先会通过编译器对程序执行一个编译的过程,把程序转换为机器语言。运
行时就不需要翻译,而直接执行就可以了。最典型的例子就是C语言。
解释型语言就是没有这个编译的过程,而是在程序运行的时候,通过编译器对程序做出解释,然后直接
运行,最典型的例子就是ruby。
由此可知,编译型语言在程序执行之前就已经对程序做出了翻译,所以在运行时就少掉了“翻译”的过
程,所以效率比较高。但是我们不能一概而论,一些解释型语言也可以通过解释器的优化来在对程序做
出翻译时对整个程序做出优化,从而在效率上超过编译型语言。
此外,随着Java基于虚拟机语言的兴起,我们又不能把语言纯粹的分为解释型和编译型两种. 用JAVA举个例子,Java首先是通过编译器编译成字节码文件,然后在运行时通过解释器给解释成机器文
件,所以Java是一个先编译后解析的语言。

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值