Python诞生

Python是著名的”龟叔“Guido van Rossum(吉多·范罗苏姆)在1989年圣诞节期间,为了打发无聊的圣诞节而编写的一个编程语言。

Python语法很多来自C,但又受到ABC语言的强烈影响。来自ABC语言的一些规定直到今天还富有争议,比如强制缩进。但这些语法规定让Python容易读。

Guido van Rossum著名的一句话就是Life is short, you need Python,译为:人生苦短,我用Python

Python实现方式

Python身为一门编程语言,但是他是有多种实现方式的,这里的实现指的是符合Python语言规范的Python解释程序以及标准库等。

Python的实现方式主要分为三大类

Cpython

PyPy

Jpython、IronPython等等类似的实现方式

CPython

这是Python的官方版本,使用C语言实现,使用最为广泛,新的语言特性一般也最先出现在这里。

CPython实现会将源文件(py文件)转换成字节码文件(pyc文件),然后运行在Python虚拟机上。

PyPy

Python(RPython Python)的Python实现版本,原理是这样的,PyPy运行在CPython(或者其它实现)之上,用户程序运行在PyPy之上。它的一个目标是成为Python语言自身的试验场,因为可以很容易地修改PyPy解释器的实现(因为它是使用Python写的),PyPy的代码性能是Cpython的五倍以上。

Jython

Jython是个Python的一种实现方式,Jython编译Python代码为Java字节码,然后由JVM(Java虚拟机)执行,这意味着此时Python程序与Java程序没有区别,只是源代码不一样。此外,它能够导入和使用任何Java类像Python模块。

IronPython

IronPython是Python的C#实现,并且它将Python代码编译成C#中间代码(与Jython类似),然后运行,它与.NET语言的互操作性也非常好。

安装Python

Windows安装Python2.7.11

下载Python软件

安装Python软件

下载下来之后双击安装,安装时一路下一步下一步即可,Windows一贯的作风,默认的安装路径是:C:\Python27

配置环境变量

右键计算机 —> 属性 —> 高级系统设置 —> 高级 —> 环境变量 —> 在第二个内容框中找到变量名为Path的一行,双击 —> Python安装目录追加到变值值中,用;分割

如图:

如:原来的值``;C:\python27,切记前面有分号

Windows 10安装后默认会把环境变量配置好。

cmd测试

win+r调出运行窗口,然后输入cmd

在cmd窗口中输入python指令

CentOS升级到Python2.7.11

CentOS6.7默认自带Python2.6.6版本,如果你不需要升级到2.7.11请跳过这段,如果需要升级请继续往下看。

下载python2.7.11源码包

[root@mosson ~]# wget https://www.python.org/ftp/python/2.7.11/Python-2.7.11.tgz

安装开发工具包

[root@mosson~]# yum -y groupinstall "debugging Tools"

编译安装

更改配置

创建链接来使系统默认python变为python2.7

查看Python版本

修改yum配置(否则yum无法正常运行)

Python简单入门

Hello Word

一般情况下程序猿的第一个小程序都是简单的输出Hello Word!,当然Python也不例外,下面就让我们来用Python输出一句Hello Word!吧!

创建一个以py结尾的文件

其内容为:

用Python执行

Python代码执行流程

释意:当Python执行代码的时候,会先把源码读取到内存当中,然后由Cpython进行编译,编译成字节码,最后由Cpython的虚拟机一行一行的解释其内容,再输出到屏幕上,然后释放内存,退出程序。

pyc文件

执行Python代码时,如果导入了其他的.py文件,那么,执行过程中会自动生成一个与其同名的.pyc文件,该文件就是Python解释器编译之后产生的字节码。

代码经过编译可以产生字节码;字节码通过反编译也可以得到代码

指定Python解释器

在Python文件的开头加入以下代码就制定了解释器。

第一种方式  告诉shell这个脚本用/usr/bin/python执行

第二种方式  在操作系统环境不同的情况下制定这个脚本用python来解释。

执行Python文件

执行python文件有两种方式:

第一种执行方式

第二种执行方式

字符编码

ASCII

python解释器在加载 .py 文件中的代码时,会对内容进行编码(默认ascill)

ASCII(American Standard Code for Information Interchange,美国标准信息交换代码)是基于拉丁字母的一套电脑编码系统,主要用于显示现代英语和其他西欧语言,其最多只能用 8 位来表示(一个字节),即:2**8 = 256,所以,ASCII码最多只能表示 256 个符号

显然ASCII码无法将世界上的各种文字和符号全部表示,所以,就需要新出一种可以代表所有字符和符号的编码,即:Unicode

Unicode  缺点:浪费空间如果是字母特殊字符数字的话

Unicode(统一码、万国码、单一码)是一种在计算机上使用的字符编码。Unicode 是为了解决传统的字符编码方案的局限而产生的,它为每种语言中的每个字符设定了统一并且唯一的二进制编码,规定虽有的字符和符号最少由 16 位来表示(2个字节),即:2 **16 = 65536,

注:此处说的的是最少2个字节,可能更多

UTF-8

一个汉字3个字节

gbk1个汉字是2个字节

UTF-8,是对Unicode编码的压缩和优化,他不再使用最少使用2个字节,而是将所有的字符和符号进行分类:ascii码中的内容用1个字节保存、欧洲的字符用2个字节保存,东亚的字符用3个字节保存...

所以,python解释器在加载 .py 文件中的代码时,会对内容进行编码(默认ascill),如果是如下代码的话:

报错:ascii码无法表示中文

代码注释:

单行注释:在代码前加上#

多行注释:

pyc文件

执行Python代码时,如果导入了其他的 .py 文件,那么,执行过程中会自动生成一个与其同名的 .pyc 文件,该文件就是Python解释器编译之后产生的字节码。

ps:代码经过编译可以产生字节码;字节码通过反编译也可以得到代码。

Py转pyc  其实 就是你的程序代码交给虚拟机转换成机器可以识别的二进制的过程。 就是字节码转换

不是编译过程

为什么生成pyc文件

缓存的问题。 转换字节码的数据写到硬盘上, 下次执行的时候不用翻译了。

python中的变量

变量的命名规则:

1 变量名只能是 字母、数字或下划线的任意组合

2 不能以数字开头

3 不能是python的已用的变量名

例如:['and', 'as', 'assert', 'break', 'class', 'continue', 'def', 'del', 'elif', 'else', 'except', 'exec', 'finally', 'for', 'from', 'global', 'if', 'import', 'in', 'is', 'lambda', 'not', 'or', 'pass', 'print', 'raise', 'return', 'try', 'while', 'with', 'yield']

变量赋值:

模块导入:

模块导入是大大简化你的程序的可读性。

比如 1.py

而2.py

而执行python 1.py结果是

world

hello

大家看到了吧,import xxx.py 就是将这个文件的内容导入进来替换这个import行。

数据类型

按照特征划分

按照可变性划分:

流程控制和缩进

注释:if语句,当且仅当if后的条件为真时才会执行if条件下的代码块,

if 多层判断

while 循环

while 条件:

动作

当条件一旦满足就不会再执行动作

while的退出循环方法1

例子: 打印数字当数字为7 则退出循环

重点:利用了 flag的布尔类型来做赋值控制。

continue  break练习

continue 是跳出本次循环,继续下次循环

break是跳出本层循环

检测是否是跳出本层循环

作业:

num one

num two

linux命令行求和

num three

num four

num five

三次登录:

python基础篇_Python基础篇相关推荐

  1. 视频教程-快速入门Python基础教程_Python基础知识大全-Python

    快速入门Python基础教程_Python基础知识大全 十余年计算机技术领域从业经验,在中国电信.盛大游戏等多家五百强企业任职技术开发指导顾问,国内IT技术发展奠基人之一. 杨千锋 ¥99.00 立即 ...

  2. 视频教程-快速入门Python基础教程_Python基础进阶视频-Python

    快速入门Python基础教程_Python基础进阶视频 十余年计算机技术领域从业经验,在中国电信.盛大游戏等多家五百强企业任职技术开发指导顾问,国内IT技术发展奠基人之一. 杨千锋 ¥199.00 立 ...

  3. Python学习教程(Python学习路线_Python基础学习教程_Python视频教程):初学者新手怎样快速入门Python

    Python学习教程(Python学习路线_Python基础学习教程_Python视频教程):初学者新手怎样快速入门Python? 人生苦短,我用Python!!!短短几个字,现在在各大学习类平台随处 ...

  4. cpython python 区别面试_python基础教程之千万不要错过这几道Python面试题

    第1题: python下多线程的限制以及多进程中传递参数的方式? python多线程有个全局解释器锁(global interpreter lock),简称GIL,这个GIL并不是python的特性, ...

  5. python安装方法_Python基础入门——简介和环境配置,超实用!

    作者 | kbsc13 来源 | 机器学习与计算机视觉(ID:AI_Developer) 上周结束了如何构造一个机器学习项目的系列文章,当然还有一篇简单的总结以及介绍一些入门的学习资料,不过还在整理, ...

  6. python系列教程_python基础学习系列教程2-进阶之路中绕不开的知识点。

    本文是在上一篇的基础上编写的,若要查看见:雨滴测试:python基础系列教程1-可能是你见过的最通俗易懂的教程​zhuanlan.zhihu.com 五. python函数 所谓的函数,就是具有特定功 ...

  7. python数据分析知识点_Python基础知识点总结:数据

    首先, 什么是Python? 用python作者Guido van Rossum自己的话来说,Python是这样的一门语言: 它是一门高级编程语言, 它的核心设计理念是让所有代码变得更易阅读,并给开发 ...

  8. python的基本原理_python基础1(理论基础)

    1.python是什么语言 2.python的发展史 3.python2与python3的区别 4.python的语言类型 5.python的优缺点 6.IDLE是什么 7.变量是什么 一.pytho ...

  9. python输入姓名_Python基础篇--输入与输出

    在任何语言中,输入和输出都是代码最基础的开始, so,先来聊一聊输入和输出 输出 在python中,我们一般用print() 输出,在括号里输入你想输出的信息,用引号包裹起来(单双三都可以),例如我们 ...

  10. python基础编码_python基础篇10-py2和py3编码

    编码基础 编码概述 基本概念很简单.首先,我们从一段信息即消息说起,消息以人类可以理解.易懂的表示存在.我打算将这种表示称为"明文"(plain text).对于说英语的人,纸张上 ...

最新文章

  1. Linux命令:和输出
  2. 安装程序无法继续 因为你的计算机安装了更新的,xp安装不了ie提示“安装了更新的Internet Explorer版本”怎么办...
  3. 两数之和-给定一个整数数组nums和一个目标值target,请你在该数组找出和为目标值的那两个整数,并返回他们的数组下标,你可以假设每种输入只会对应一个答案。但是,数组同一个元素不能使-python
  4. c语言下标法与指针法,《C和指针》中关于指针与下标的问题
  5. Spark内核解析1
  6. c语言case后面可以接表达式,c++ switch语句的使用(case 后面可以跟N个语句)
  7. 【iOS】lipo otool 动、静态库
  8. 扫描仪上显示服务器连接错误代码,扫描仪 常见问题解决方法
  9. Base64 Base32 Base16全家桶
  10. 【uniapp城市三级联动】包含完整代码-城市三级联动json
  11. 最新html word 分页符,分页符在哪 或者打开 word文档选项
  12. 宇枫资本投资理财的几大定律
  13. 父进程为什么要创建子进程
  14. 安卓手机管理_北斗ERP进销存管理(销存管理工具)V2.2.4 安卓手机版
  15. Zend_Cache
  16. 浅谈如何做好项目管理
  17. Java browsing
  18. 职高计算机专业能考大学吗,为什么千万不要上职高 上职高能考大学吗
  19. 搭建直播平台什么样的服务器最合适?
  20. 小程序学习笔记--进阶之路

热门文章

  1. 8道C语言笔试题及答案(2022发布)
  2. [Docker]进入容器命令
  3. 解决服务器终端无法显示图片的问题
  4. 我总结了五种常用聚类分析算法,推荐收藏
  5. mysql将没有员工的部门都删除_Mysql 用sql语句实现删除与CLARK同部门的员工信息...
  6. C++ MFC 学习笔记+小型通讯录系统实现
  7. c语言链表正序输出,建立正序链表,该怎么处理
  8. Java8-排序方法(正序、倒序)
  9. 微博营销的价值和优缺点
  10. 联想TD350服务器主板型号,【新品】塔式机身 联想ThinkServer TD350