Python基础知识点整理 1

Python语言:
python是一个高层次的结合了解释性编译性互动性面向对象脚本语言。
Python的设计局有很强的可读性,它比Java更加的简洁而且易读。相比其他语言经常使用的英文关键字,
其他语言的一些标点符号,它具有比其他语言更有特色的语法结构。
 
  1. Python 是一种解释性语言:这意味着开发过程中没有了编译这个环节,类似于PHP和Perl语言。解释性语言是边解释,边执行,它不像Java一样是先编译成.class字节码文件,然后再在java虚拟机上面执行。
  2. Python是交互式语言,这意味着,你可以在Python的提示符>>>之后直接执行代码。
  3. Python是面向对象语言,这意味着Python支持面向对象的风格或代码封装在对象的编程技术。

Python的几个重要的特点:

  1. 可移植性:基于其开放源代码的特性,Python已经被移植到许多平台。许多平台都可以使用python语言。比如linux,windows,Android..等等一系列没有听过的平台。
  2. 可拓展性:如果你需要运行一段执行很快的关键代码,或者是想要编写一些不愿开放的算法。你可以使用C 或者C++完成那部分程序,然后从你的python程序去调用。
  3. 可嵌入:你可以将python嵌入到C/C++程序,让你的程序的用户获得脚本化的能力。

Python开发工具PyCharm的功能:调试、语法高亮、Project管理、代码跳转、智能提示、自动完成、单元测试、版本控制…


注意:python 在print("hello,world")的时候可以正确运行,但是在运行print("你好,世界")的时候会出错。

SyntaxError: Non-ASCII character '\xe4' in file test.py on line 2, but no encoding declared; see http://www.python.org/peps/pep-0263.html for details

原因:python的默认编码格式是ASCII格式,在没有修改编码格式时是无法正确打印汉字的,所以在读取中文时会报错。

解决办法就是在文件开头加入 #-*- coding:utf-8 -*- 或者 # coding=utf-8就行了  '='两边不要有空格

如果你使用的是Pycharm等集成开发环境,可以在Setting->Editor->File encodings中将IDE/Project Encoding设置为utf-8

如果你使用的是编译器,例如notepad++,存储.py文件的时候,需要同时设置.py文件存储的格式为UTF-8。

否则会出现如下错误:

SyntaxError: (unicode error) ‘utf-8’ codec can’t decode byte 0xc4 in position 0: invalid continuation byte


python 为什么要配置环境变量?配置了之后能做什么?

python 配置环境变量就是让电脑具有了Python解释器的路径,在执行python脚本文件的时候,就可以通过该路径找到python解释器,通过解释器执行脚本。

比如我们可以在交互式命令行中执行  $ python test.py ,计算机可以识别Python这个指令,就是因为有环境变量。

另一种执行python脚本的方式:

假定您的Python解释器在/usr/bin目录中,也就是python.exe 安装在/usr/bin目录下,使用以下命令执行脚本:$ chmod +x test.py # 脚本文件添加可执行权限 $ ./test.py

执行python脚本的时候,必须进入到此python脚本所在的文件目录下才能执行,否则会因为找不到文件而报错。


python基础知识:

  1. python严格控制缩进,如果要缩进,所有代码的缩进空格数应该相同。不能有的缩进两行有的缩进三行。
  2. 如果一行语句过长,可以在代码行末加入'\'将一行的语句分为多行显示。
  3. Python 可以使用引号( ' )、双引号( " )、三引号( ''' 或 """ ) 来表示字符串,引号的开始与结束必须是相同类型的。其中三号可以由多行组成,编写多行文本的快捷语法,常用于文档字符串,在文件的特定地点,被当做注释。

  4. Python可以在同一行中使用多条语句,语句之间使用分号(;)分割,以下是一个简单的实例:import sys; x = 'runoob'; sys.stdout.write(x + '\n')

  5. print 默认输出是换行的,如果要实现不换行需要在变量末尾加上逗号 ,
  6. 缩进相同的一组语句构成一个代码块,我们称之代码组。像if、while、def和class这样的复合语句,首行以关键字开始,以冒号( : )结束,该行之后的一行或多行代码构成代码组。

  7. 很多程序可以执行一些操作来查看一些基本信息,Python 可以使用 -h 参数查看各参数帮助信息


Number(数字):

Python3 支持 int、float、bool、complex(复数)

在Python 3里,只有一种整数类型 int,表示为长整型,没有 python2 中的 Long。像大多数语言一样,数值类型的赋值和计算都是很直观的。

内置的 type() 函数可以用来查询变量所指的对象类型。这个函数以后会常用到。

此外还可以用 isinstance 来判断:
>>> isinstance(a, int)
True

isinstance 和 type 的区别在于:

  • type()不会认为子类是一种父类类型。
  • isinstance()会认为子类是一种父类类型。

注意:在 Python2 中是没有布尔型的,它用数字 0 表示 False,用 1 表示 True。到 Python3 中,把 True 和 False 定义成关键字了,但它们的值还是 1 和 0,它们可以和数字相加。

  • 1、Python可以同时为多个变量赋值,如a, b = 1, 2。
  • 2、一个变量可以通过赋值指向不同类型的对象。
  • 3、数值的除法包含两个运算符:/ 返回一个浮点数,// 返回一个整数。

4、在混合计算时,Python会把整型转换成为浮点数。


String(字符串):

Python中的字符串用单引号 ' 或双引号 " 括起来,同时使用反斜杠 \ 转义特殊字符。

字符串的截取的语法格式如下:StringName[起点:终点]  注意字符串是从0开始计数,切片含头不含尾。

Python基础知识点整理 1

1. 加号 + 是字符串的连接符, 星号 * 表示复制当前字符串,与之结合的数字为复制的次数.

2. Python 使用反斜杠 \ 转义特殊字符,如果你不想让反斜杠发生转义,可以在字符串前面添加一个 r,表示原始字符串

>>> print('Ru\noob')
Ru
oob
>>> print(r'Ru\noob')
Ru\noob
3. Python 没有单独的字符类型,一个字符就是长度为1的字符串。

4. 与 C 字符串不同的是,Python 字符串不能被改变。向一个索引位置赋值,比如word[0] = 'm'会导致错误。

5. Python中的字符串有两种索引方式,从左往右以0开始,从右往左以-1开始。


List(列表):

List(列表) 是 Python 中使用最频繁的数据类型。

列表可以完成大多数集合类的数据结构实现。列表中元素的类型可以不相同,它支持数字,字符串甚至可以包含列表(所谓嵌套)。

列表是写在方括号 [] 之间、用逗号分隔开的元素列表。

和字符串一样,列表同样可以被索引和截取,列表被截取后返回一个包含所需元素的新列表。

列表截取的语法格式如下:变量[头下标:尾下标]

Python基础知识点整理 1

加号 + 是列表连接运算符,星号 * 是重复操作.这里是对列表里的元素进行重复。

与Python字符串不一样的是,列表中的元素是可以改变的。


Tuple(元组)

元组(tuple)与列表类似,不同之处在于元组的元素不能修改。元组写在小括号 () 里,元素之间用逗号隔开。

元组中的元素类型也可以不相同。

元组与字符串类似,可以被索引且下标索引从0开始,-1 为从末尾开始的位置。也可以进行截取(看上面,这里不再赘述)。

其实,可以把字符串看作一种特殊的元组。

虽然tuple的元素不可改变,但它可以包含可变的对象,比如list列表。List列表中也可以包含元组对象。这样的数据可以转换为字典。

比如:>>> dict([('Runoob', 1), ('Google', 2), ('Taobao', 3)])         得到     {'Runoob': 1, 'Google': 2, 'Taobao': 3}

构造包含 0 个或 1 个元素的元组比较特殊,所以有一些额外的语法规则

tup1 = ()    # 空元组
tup2 = (20,) # 一个元素,需要在元素后添加逗号

string、list 和 tuple 都属于 sequence(序列)。元组也可以使用+操作符进行拼接。


Set(集合)

集合(set)是由一个或数个形态各异的大小整体组成的,构成集合的事物或对象称作元素或是成员。

基本功能是进行成员关系测试和删除重复元素。


Dictionary(字典)

字典(dictionary)是Python中另一个非常有用的内置数据类型。

列表是有序的对象集合,字典是无序的对象集合。两者之间的区别在于:字典当中的元素是通过键来存取的,而不是通过偏移存取。

字典是一种映射类型,字典用 { } 标识,它是一个无序的 键(key) : 值(value) 的集合。

键(key)必须使用不可变类型。

在同一个字典中,键(key)必须是唯一的。创建空字典使用 { }