python入门和杂识
1需要理解的一些概念
1、C语言编译完就是机器码,机器码可以直接在处理器上执行。
2、CPU可以直接读取机器码。
3、Python是用C写的。
4、Python解释器会把代码内容读到内存里,通过Python解释器翻译成字节码。
5、CPU不能直接读取字节码,需要把字节码转换成机器码
2.python的特点:优雅、明确、简单
1)简单、易学、免费开源
2)高层语言(使用Python编写程序时无需考虑如何管理程序使用的内存一类的底层细节)
3)解释性(可以直接从源代码运行。在计算机内部,python解释器把源代码转换为字节码的中间形式,然后再把它翻译成计算机使用的机器语言)
4)可移植性、可扩展性(部分程序可以使用其他语言编写,如c/c++)、可嵌入性(可以把Python嵌入到c/c++程序中,从而提供脚本功能)
5)面向对象(python既支持面向过程编程也支持面向对象编程)
缺点:运行速度慢、代码不能加密、线程不能利用多CPU问题
3.目前Python主要应用领域:
- 云计算: 云计算最火的语言, 典型应用OpenStack
- WEB开发: 众多优秀的WEB框架,众多大型网站均为Python开发,Youtube, Dropbox, 豆瓣。。。, 典型WEB框架有Django
- 科学运算、人工智能: 典型库NumPy, SciPy, Matplotlib, Enthought librarys,pandas
- 系统运维: 运维人员必备语言
- 金融:量化交易,金融分析,在金融工程领域,Python不但在用,且用的最多,而且重要性逐年提高。原因:作为动态语言的Python,语言结构清晰简单,库丰富,成熟稳定,科学计算和统计分析都很牛逼,生产效率远远高于c,c++,java,尤其擅长策略回测
- 图形GUI: PyQT, WxPython,TkInter
4.安装python包
链接:https://pan.baidu.com/s/1e7-tjKHTAxHDr6o-hfbbZg
提取码:zjxq
下载好后双击进入安装界面
安装成功
安装完后验证:Win+R --->cmd
在命令界面输入python回车,当出现如下界面表示成功,如要退出python交互式环境,输入exit(0)
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
5.行和缩进
学习 Python 与其他语言最大的区别就是,Python 的代码块不使用大括号 {} 来控制类,函数以及其他逻辑判断。python 最具特色的就是用缩进来写模块。
缩进的空白数量是可变的,但是所有代码块语句必须包含相同的缩进空白数量,这个必须严格执行。
每一行都是一个语句,当语句以冒号 : 结束时,缩进的语句视为代码块
a = 100
if a>=0 :
print(a)
else:
print(-a)
6.字符编码
8个比特一个字节(8bit = 1byte),几个字节一个字符
x = b'ABC' 显示内容与 'ABC' 一样,但byte(字节)的每个字符都只占用一个字节
内存中用Unicode编码(统一编码),外存或传输用UTF-8编码
ord('A')------>65 字符----->整数表示
chr(66)------>'B' 编码------>对应的字符
用 Unicode 表示的str通过 encode() 编码为指定的byte以便于传输
反过来,从网络或外存读取的字节流(byte)把byte变为str,则
如果byte中只有一小部分无效字节,可传入 errors = 'ignore' 忽视
计算字符或字节数数 len('ABC') 或 len(b'ABC')
7.扩展Python
所有能被整合或导入其他Python脚本的代码,都可以称为扩展,可用纯Python、C和C++写扩展
作用:
1.添加额外的(非Python)功能
2性能瓶颈的效率提升,把代码放到扩展中,可提升性能
3.保持专有源代码私密
python入门和杂识的更多相关文章
- python入门简介
Python前世今生 python的创始人为吉多·范罗苏姆(Guido van Rossum).1989年的圣诞节期间,吉多·范罗苏姆为了在阿姆斯特丹打发时间,决心开发一个新的脚本解释程序,作为ABC ...
- python入门学习课程推荐
最近在学习自动化,学习过程中,越来越发现coding能力的重要性,不会coding,基本不能开展自动化测试(自动化工具只是辅助). 故:痛定思痛,先花2个星期将python基础知识学习后,再进入自动化 ...
- Python运算符,python入门到精通[五]
运算符用于执行程序代码运算,会针对一个以上操作数项目来进行运算.例如:2+3,其操作数是2和3,而运算符则是“+”.在计算器语言中运算符大致可以分为5种类型:算术运算符.连接运算符.关系运算符.赋值运 ...
- Python基本语法[二],python入门到精通[四]
在上一篇博客Python基本语法,python入门到精通[二]已经为大家简单介绍了一下python的基本语法,上一篇博客的基本语法只是一个预览版的,目的是让大家对python的基本语法有个大概的了解. ...
- Python基本语法,python入门到精通[二]
在上一篇博客Windows搭建python开发环境,python入门到精通[一]我们已经在自己的windows电脑上搭建好了python的开发环境,这篇博客呢我就开始学习一下Python的基本语法.现 ...
- visual studio 2015 搭建python开发环境,python入门到精通[三]
在上一篇博客Windows搭建python开发环境,python入门到精通[一]很多园友提到希望使用visual studio 2013/visual studio 2015 python做demo, ...
- python入门教程链接
python安装 选择 2.7及以上版本 linux: 一般都自带 windows: https://www.python.org/downloads/windows/ mac os: https:/ ...
- Python学习【第二篇】Python入门
Python入门 Hello World程序 在linux下创建一个叫hello.py,并输入 print("Hello World!") 然后执行命令:python hello. ...
- python入门练习题1
常见python入门练习题 1.执行python脚本的两种方法 第一种:给python脚本一个可执行的权限,进入到当前存放python程序的目录,给一个x可执行权限,如:有一个homework.py文 ...
随机推荐
- js里apply用法
1.Function.apply,用于构造函数的继承,继承另外一个构建对象的属性与方法 function People(name,age){ this.name = name; thi ...
- redux沉思录
要素:store.reducer.dispatch/subscribe connect:将业务逻辑剥离到容器类,数据的双向绑定: 数据.操作.UI分离.命令封装 核心思想:对共享状态的维护: 核心代码 ...
- [Algorithm] 21. Merge Two Sorted Lists
Merge two sorted linked lists and return it as a new list. The new list should be made by splicing t ...
- Good Article Good sentence HDU - 4416 (后缀数组)
Good Article Good sentence \[ Time Limit: 3000 ms\quad Memory Limit: 32768 kB \] 题意 给出一个 \(S\) 串,在给出 ...
- 13.go内置的rate包学习1
package main import ( "context" "fmt" "golang.org/x/time/rate" "l ...
- cockroachdb docker-compose 本地集群运行以及prometheus监控
cockroachdb 官方提供的是一个直接使用docker 运行的方式,但是使用docker-compose 会比较方便,可以快速搭建一个集群 同时官方也提供了prometheus 的metrics ...
- npkill 一个方便的npm 包清理工具
npm 包很好用,但是占用空间太多了,npkill 提供了一个方便的工具,可以帮助我们查找安装的npm 包,以及进行清理 安装 npm install -g npkill 简单使用 命令 npkill ...
- Maven配置文件setting.xml详解
注:本文来源于:大话JAVA的那些事 <Maven配置文件setting.xml详解> <?xml version="1.0" encoding="UT ...
- luogu P4248 [AHOI2013]差异 SAM
luogu P4248 [AHOI2013]差异 链接 luogu 思路 \(\sum\limits_{1<=i<j<=n}{{len}(T_i)+{len}(T_j)-2*{lcp ...
- NodeJS代码组织与部署
使用NodeJS编写程序前,为了有个良好的开端,首先需要准备好代码的目录结构和部署方式,就如同修房子要先搭脚手架.本章将介绍与之相关的各种知识. 一.模块路径解析规则 我们已经知道,require函数 ...