python基础知识

一、      什么是python

Python是一门编程语言:解释型语言、动态语言类型、强定义语言类型(安全型语言)

 

(一)  编译型语言与解释型语言

  1. 1.     编译型语言:

编译器将源程序的每一行代码全都先翻译成机器语言,以二进制进行存储,再调用时直接以机器语言进行执行:

1)      优点:执行效率高

2)      缺点:开发效率低

  1. 2.     解释性语言

解释器只在调用程序时,才将源代码一条一条解释成机器语言来执行。

1)      优点:开发效率高

2)      缺点:执行效率低

 

(二)  动态语言与静态语言

  1. 1.     动态语言

动态类型语言:动态类型语言是指在运行期间才去做数据类型检查的语言,也就是说,在用动态类型的语言编程时,永远也不用给任何变量指定数据类型,该语言会在你第一次赋值给变量时,在内部将数据类型记录下来。Python和Ruby就是一种典型的动态类型语言,其他的各种脚本语言如VBScript也多少属于动态类型语言。

  1. 2.     静态语言

静态类型语言与动态类型语言刚好相反,它的数据类型是在编译其间检查的,也就是说在写程序时要声明所有变量的数据类型,C/C++是静态类型语言的典型代表,其他的静态类型语言还有C#、JAVA等。

 

(三)  强类型语言与弱类型语言

  1. 1.     强类型语言

强制数据类型定义的语言。一个变量被指定了某个数据类型,如果不经过强制转换,那么它就永远是这个数据类型了。举个例子:如果你定义了一个整型变量a,那么程序根本不可能将a当作字符串类型处理。强类型定义语言是类型安全的语言。

  1. 2.     弱类型语言

数据类型可以被忽略的语言。它与强类型定义语言相反, 一个变量可以赋不同数据类型的值。

强类型定义语言在速度上可能略逊色于弱类型定义语言,但是强类型定义语言带来的严谨性能够有效的避免许多错误。另外,“这门语言是不是动态语言”与“这门语言是否类型安全”之间是完全没有联系的!

 

二、      Python优缺点

1)      优美、清晰、简单    

2)      开发效率高,有强大的第三方库

3)      可移植性强——Python已经被移植在许多平台上(经过改动使它能够工 作在不同平台上)

4)      可扩展性——可以把部分程序用C或C++编写,然后在Python程序中使用它们

5)      可嵌入性——可以把Python嵌入你的C/C++程序,从而向你的程序用户提供脚本功能。

 

 

(一)  Python2xpython3x

  1. 1.     Python2x

                  代码冗余:重复、混乱

             不识别中文,input输入的数据类型为所输入类型:可用raw_input()模拟python3x

  1. 2.     Python3x

                  优美、清晰、简单

                  Input获取的数据类型均为字符串

三、      Python种类

(一)  CPython

当我们从Python官方网站下载并安装好Python 3.6后,我们就直接获得了一个官方版本的解释器:CPython。这个解释器是用C语言开发的,所以叫CPython。在命令行下运行python就是启动CPython解释器。

CPython是使用最广的Python解释器。教程的所有代码也都在CPython下执行。

(二)  IPython

IPython是基于CPython之上的一个交互式解释器,也就是说,IPython只是在交互方式上有所增强,但是执行Python代码的功能和CPython是完全一样的。好比很多国产浏览器虽然外观不同,但内核其实都是调用了IE。

CPython用>>>作为提示符,而IPython用In [序号]:作为提示符。

(三)  PyPy

PyPy是另一个Python解释器,它的目标是执行速度。PyPy采用JIT技术,对Python代码进行动态编译(注意不是解释),所以可以显著提高Python代码的执行速度。

绝大部分Python代码都可以在PyPy下运行,但是PyPy和CPython有一些是不同的,这就导致相同的Python代码在两种解释器下执行可能会有不同的结果。如果你的代码要放到PyPy下执行,就需要了解PyPy和CPython的不同点。

(四)  Jython

Jython是运行在Java平台上的Python解释器,可以直接把Python代码编译成Java字节码执行。

(五)  IronPython

IronPython和Jython类似,只不过IronPython是运行在微软.Net平台上的Python解释器,可以直接把Python代码编译成.Net的字节码。

四、      Python环境变量配置与pycharm的安装破解

 

 

 

五、      编码

(一)  ASCII

英文1个字节,8位二进制

中文2字节,16位二进制

(二)  Unicode

中英文都采用2字节

(三)  Utf-8

英文1字节,欧洲2字节,中文3字节

(四)  Gbk

英文1字节,中文2字节

 

 

六、      Python基础知识

(一)  变量

暂时存放数据,以便程序调用

变量命名规范

a)      只能是字母、数字、下划线

b)      不能以数字开头

c)      不能使用python的系统预留关键字

['False', 'None', 'True', 'and', 'as', 'assert', 'break', 'class', 'continue', 'def', 'del', 'elif', 'else', 'except', 'finally', 'for', 'from', 'global', 'if', 'import', 'in', 'is', 'lambda', 'nonlocal', 'not', 'or', 'pass', 'raise', 'return', 'try', 'while', 'with', 'yield']

d)      要具有可描述性

e)      不宜过长,区分大小写

f)       推荐使用下划线、驼峰体

 

(二)  常量

生活中理论上不发生改变的量,例如:π,身份证号等等

(三)  注释

单行注释:#

多行注释:’’’ ‘’’’ 或者 “”””””(多行注释可以错开嵌套使用:‘’‘ “”“ ”“” ’‘’)

(四)  交互

输入:input( )

打印:print( )

格式化输出

字符串用三引号可以保持原样输出

用特定的占位符%进行格式化输出:print(“姓名:%s,年龄:%d” % (name,age))

 

(五)  基础数据类型

  1. 1.     整型int

在32位机器上,整数的位数为32位,取值范围为-2**31~2**31-1,

在64位系统上,整数的位数为64位,取值范围为-2**63~2**63-1

 

  1. 2.     字符串型str

加了引号的字符都被认为是字符串:’’   “”   ‘’’  ‘’’’(多行字符串必须用三引号)

字符串可以拼接+,与数字相乘str*int(表示重复)

  1. 3.     布尔型bool

一个True(真),一个False(假), 主要用于逻辑判断

  1. 4.     元组tuple

 

  1. 5.     列表list
  2. 6.     集合set
  3. 7.     字典dict

(六)  基本运算符

  1. 1.     算术运算符

+  -  *  /  %  **  //

  1. 2.     赋值运算符

=  +=  -=  *=   /=

  1. 3.     比较运算符

>        <   >=    <=  !=  <>

  1. 4.     逻辑运算符

and  or  not 

and  or 二元运算符,返回值为其对结果有决定性作用的值

  1. 5.     成员运算符

in   not in

  1. 6.     位运算
  2. 7.     Python运算符优先级

以下表格列出了从最高到最低优先级的所有运算符:

运算符

描述

**

指数 (最高优先级)

~ + -

按位翻转, 一元加号和减号 (最后两个的方法名为 +@ 和 -@)

* / % //

乘,除,取模和取整除

+ -

加法减法

>> <<

右移,左移运算符

&

位 'AND'

^ |

位运算符

<= < > >=

比较运算符

<> == !=

等于运算符

= %= /= //= -= += *= **=

赋值运算符

is   is not

身份运算符

in not in

成员运算符

not and or

逻辑运算符

 

 

(七)  转移字符

换行符:\n

制表符:\t

……

七、      Python中的if结构

五大结构

(一)  两种选择,可选

if 条件:

    语句体

(二)  两种选择,二选一

if 条件:

    语句体

else:

    语句体

(三)  多种选择,可选

if 条件:

    语句体

elif 条件:

    语句体

elif 条件:

    语句体

(四)  多种选择,多选一

if 条件:

    语句体

elif 条件:

    语句体

elif 条件:

    语句体

  else:

语句体

(五)  if嵌套

if 条件:

    if 条件:

           语句体

elif 条件:

    语句体

八、      Python中的while结构

(一)  基本结构

while 条件:

    循环体

 

 

(二)  终止循环:

  条件为假

    break

(三)  continue跳出本次循环进行下一次

(四)  while…else…固定搭配:

只有当break执行时,else才不执行

while 条件:

           循环体

           break

else:

语句体

posted @ 2019-03-11 15:13  笑得好美  阅读(298)  评论(0编辑  收藏  举报