Python3 - 随便说一下
Ⅰ编程语言基础知识
编程语言总体分以为机器语言、汇编语言、高级语言:
机器语言:计算机硬件能够直接使用的编程语言,二进制的集合,属于低级语言。
汇编语言:借助符号代替机器指令,与机器指令对应,面向计算机硬件的,容易理解和记忆,属于低级语言。
高级语言:与计算机硬件无关,其表达方式接近于所描述的问题,更易于掌握。
高级语言所编制的程序不能直接被计算机识别,必须经过转换才能被执行,按转换方式可将它们分为两类:
解释类:
执行方式类似于我们日常生活中的“同声翻译”,应用程序源代码一边由相应语言的解释器“翻译”成目标代码(机器语言),一边执行,因此效率比较低,而且不能生成可独立执行的可执行文件,应用程序不能脱离其解释器(想运行,必须先装上解释器),但这种方式比较灵活,可以动态地调整、修改应用程序。
编译类:
编译是指在应用源程序执行之前,就将程序源代码“翻译”成目标代码(机器语言),因此其目标程序可以脱离其语言环境独立执行(编译后生成的可执行文件,是 CPU 可以理解的二进制的机器码组成的),使用比较方便、效率较高。但应用程序一旦需要修改,必须先修改源代码,再重新编译生成新的目标文件才能执行,只有目标文件而没有源代码,修改很不方便。编译后程序运行时不需要重新翻译,直接使用编译的结果就行了。程序执行效率高,依赖编译器,跨平台性差些。
ⅡPython 语言概述
Python 是一种面向对象的、解释型的、弱类型的脚本语言。
弱类型语言的典型特征:
1.变量无须声明即可直接赋值;
2.变量的数据类型可以动态改变。
1.开源的编程语言;
2.开发效率高,既有完善的内置库也有非常丰富第三方库;
3.自动内存管理;
4.跨平台;
5.胶水语言,可以和其它语言混合使用;
Python 的缺点:
1.相比于 C/JAVA 代码执行速度慢;
2.代码不能加密,Python 是解释性语言,源码都是以明文形式保存的;
3.线程不能利用多核,GIL 即全局解释器锁(Global Interpreter Lock),是计算机程序设计语言解释器用于同步线程的工具,使得任何时刻仅有一个线程在执行,Python 的线程是操作系统的原生线程。在 Linux 上为 pthread ,在 Windows 上为 Win thread,完全由操作系统调度线程的执行。一个 Python 解释器进程内有一条主线程,以及多条用户程序的执行线程。即使在多核 CPU 平台上,由于 GIL 的存在,所以禁止多线程的并行执行。
Python代码的两种执行方式:
1.py文件执行
2.交互器执行
运行过程
Python 程序第一次运行的时候,编译的结果保存在位于内存中的 PyCodeObject 中,当 Python 程序运行结束时 Python 解释器会把 PyCodeObject 写回到 pyc 文件中。
第二次运行时 Python 程序会在磁盘中寻找 pyc 文件,如果找到则直接加载,否则就会重复Python第一次运行的过程。
如果 Python 源代码被更新了则会从新编译。
PyCodeObject:在内存中保存 Python 编译后的结果
Pyc:保存 Python 解释后的结果。
Python 脚本文件的后缀名可以不写,对于 Python 来讲没有实际意义,加 .py 后面后缀名只是为了告诉人们这个脚本是用 Python 语言发开的。
Python3 - 随便说一下的更多相关文章
- Gunicorn配置部分的翻译
写在前面,虽然翻译得很烂,但也是我的劳动成果,转载请注明出处,谢谢. Gunicorn版本号19.7.1 Gunicorn配置 概述 三种配置方式 优先级如下,越后的优先级越大 1.框架的设置(现在只 ...
- python3第一天,随便写写
哈哈 我滴第一篇博客,不知道咋写,随意看了看别人的博客,我还是不知道咋写,既然是我的博客,那我就把它当随笔写了(这里就是添加随笔...) 也不知道自己说了啥,不过想到了一句话:日记都是写给别人看的.哈 ...
- python3爬取1024图片
这两年python特别火,火到博客园现在也是隔三差五的出现一些python的文章.各种开源软件.各种爬虫算法纷纷开路,作为互联网行业的IT狗自然看的我也是心痒痒,于是趁着这个雾霾横行的周末瞅了两眼,作 ...
- Python3 模块
为了编写可维护的代码,我们把很多函数分组,分别放到不同的文件里,这样,每个文件包含的代码就相对较少,很多编程语言都采用这种组织代码的方式.在Python中,一个.py文件就称之为一个模块(Module ...
- ubuntu 下搭建一个python3的虚拟环境(用于django配合postgresql数据库开发)
#安装python pip (在物理环境中安装) sudo apt-get install python-pip sudo apt-get install python3-pipsud ...
- 【Python3之字符编码】
一.字符集和字符编码 1.定义 计算机中储存的信息都是用二进制数表示的,而我们在屏幕上看到的英文.汉字等字符是二进制数转换之后的结果.通俗的说,按照何种规则将字符存储在计算机中,如'a'用什么表示,称 ...
- linux下安装python3.6.4
想在阿里云端装一个 python36,因为自带的python2有点老 ,(centos系统) 当然你如果选择的乌班图系统的话就自带了python3,就不用看了 于是查找资料,但是一步一步的来总是不行, ...
- Python爬虫入门教程 50-100 Python3爬虫爬取VIP视频-Python爬虫6操作
爬虫背景 原计划继续写一下关于手机APP的爬虫,结果发现夜神模拟器总是卡死,比较懒,不想找原因了,哈哈,所以接着写后面的博客了,从50篇开始要写几篇python爬虫的骚操作,也就是用Python3通过 ...
- Python3+unitest自动化测试初探(中篇)
目录 6.生成测试报告 7.编写邮件发送工具 8.发送邮件 发布 0 86 编辑 删除 Python3+unitest自动化测试初探(中篇)(2019-04-18 01:41) 发布 3 245 编辑 ...
随机推荐
- mnist卷积网络实现
加载MNIST数据 from tensorflow.examples.tutorials.mnist import input_data mnist = input_data.read_data_se ...
- CentOS下载与服务器版安装(VMware)
1. 下载 首先需要选择一个版本,因为华为云最新只提供了CentOS 7.6,所以要选择CentOS 7版本的. 官网只提供了最新的版本,而且服务器在国外,下载速度贼慢. 不过官方提供了分布在各个地区 ...
- Vue axios post 传参数,后台接收不到为 null
由于axios默认发送数据时,数据格式是Request Payload,而并非我们常用的Form Data格式,后端未必能正常获取到,所以在发送之前,需要使用qs模块对其进行处理. cnmp inst ...
- (转)AutoML 与轻量模型大列表: awesome-AutoML-and-Lightweight-Models
Awesome-AutoML-and-Lightweight-Models 原文:http://bbs.cvmart.net/articles/414/zi-yuan-automl-yu-qing-l ...
- UnicodeDecodeError: 'utf-8' codec can't decode byte 0xc3 in position 0: invalid continuation byte
需求:python如何实现普通用户登录服务器后切换到root用户再执行命令 解决参考: 代码: def verification_ssh(host,username,password,port,roo ...
- script 命令/方法/函数
$redis->script('load', $script); $redis->script('flush'); $redis->script('kill'); $redis-&g ...
- mysql起容器的最精简命令
亲测有效的 mysql 容器命令: #pull mysql:5.6 docker pull mysql:5.6 #起容器,映射3306端口,配置root用户密码 docker run -di --na ...
- PHP 循环输出多重数组元素
<?php $arr = array( array( array( array( array( ,, ) ) ), array( ,,) ) ), array(, , ) ); function ...
- Typora 精美而强大的Markdown编辑器
Typora 精美而强大的Markdown编辑器 转 https://www.jianshu.com/p/45e284645d30 Markdown编辑器千千万,可是有颜值.功能强并且免费的,就没有 ...
- opencv图片旋转90度
#include<iostream> #include <opencv2/opencv.hpp> using namespace std; using namespace cv ...