首页 > 编程笔记 > Python笔记

Python基础教程(入门教程),30分钟玩转Python编程!

这是一篇针对初学者的 Python 基础教程,只要你认真阅读,花费 30 分钟即可快速了解 Python。

这篇 Python 入门教程讲解的知识点包括:Python 编程环境的搭建、Python 基本操作入门、Python 数据类型、Python 语句和函数。

Python环境下载和配置

  1. 根据 Windows 版本(64位/32位)从 Python 官网安装下载对应的版本,如图 1 所示。

    下载Python
    图 1 下载Python

    官方下载网址:https://www.python.org/

  2. 下载完成后,双击文件以运行安装程序安装 Python,如图 2 所示:

    安装 Python
    图 2 安装 Python

    注意,需要勾选“Add Python 3.6 to PATH”选项后单击“Customize installation”选项。这个选项用于将 Python 3.6 加入系统路径,勾选该选项会使日后的操作非常方便;如果没有勾选这个选项就需要手动为系统的环境变量添加路径。
  3. 在弹出的选项卡中勾选所有的选项,并单击“Next”按钮,如图 3 所示。

    Python 安装第二步
    图 3 Python 安装第二步

    选项“Documentation”表示安装 Python 的帮助文档;选项“pip”表示安装 Python 的第三方包管理工具;选项“tcl/tk and IDLE”表示安装 Python 的集成开发环境;选项“Python test suite”表示安装 Python 的标准测试套件,后两个选项则表示允许版本更新。
  4. 保持默认勾选状态,单击“Browse”按钮,选择安装路径,如图 4 所示。

    设置安装路径
    图 4 设置安装路径
  5. 单击“Install”按钮,直至完成安装。

安装好后,调出命令提示符,输入“python”,检查是否安装成功。如果 Python 安装成功,将出现如图 5 所示的界面,即输入“python”后,会看到“>>>”符号。

验证 Python 是否安装成功
图 5 验证 Python 是否安装成功

常用IDE——PyCharm

安装好 Python3.6 环境后,还需要配置一个程序员专属工具,即 PyCharm,它是一个适合用于开发的多功能 IDE(集成开发环境),下载社区版(免费版),下载地址为http://www.jetbrains.com/pycharm/download/#section=windows(参见图 6):

下载 PyCharm
图 6 下载 PyCharm

PyCharm 非常好用,通过 PyCharm 可以下载、安装和管理库。

常用IDE——Anaconda

Anaconda 是一个专门用于统计和机器学习的 IDE,它集成了 Python 和许多基础的库,如果业务场景是统计和机器学习,那么只要安装一个 Anaconda 就可以了,这样省去许多复杂的配置过程。

Anaconda 的官方下载地址为:https://www.anaconda.com/download/,参见图 7:
下载 Anaconda
图 7 下载 Anaconda

这里默认下载的是 64 位的版本,如果需要 32 位的版本,那么可以单击“Download”按钮下的文字链接。

使用 Anaconda 不需要提前安装 Python,安装后即可运行:通过快捷键【Win+R】调用运行窗口,输入“ipython jupyter”,然后单击“确定”按钮(参见图 8)。


图 8

Python操作入门

编写第一个Python代码

运行 PyCharm 后,需要先新建计划,单击“Create New Project”选项(参见图 9):

新建工程
图 9 新建工程

设置 Location(路径)和 Interpreter(翻译器),这里选择 Python 原版的翻译器,然后单击右下角的“Create”按钮,如图 10 所示:

设置Location(路径)和Interpreter(翻译器)
图 10 设置Location(路径)和Interpreter(翻译器)

新建 Project(计划)后,在左侧的项目窗口,右击鼠标,在快捷菜单中选择“New”➔“Python File”命令,新建 Python 文件(参见图 11)。

新建Python文件
图 11 新建Python文件

设置 Name(文件名),然后单击右下角的“OK”按钮(参见图 12)。

设置文件名
图 12 设置文件名

新建文件后,右侧的空白区域就是代码编辑区(参见图 13)。

代码编辑区
图 13 代码编辑区

从“Hello World(你好,世界)”开始吧!在编辑区中输入 print(′Hello,World!′),print() 是一个打印函数,表示将括号中的文本打印在即时窗口中。

然后将鼠标光标停留在括号右侧,右击鼠标,在快捷菜单中选择“Run ‘test’”命令,其中单引号中的 test 是当前的文件名,一定要注意运行的文件名和要运行的文件名保持一致。运行后可以观察到即时窗口中打印出“Hello,World!”,如图 14 所示。

Hello,World运行结果示意图
图 14 Hello,World运行结果示意图

Python基本操作

Python注释

注释的目的是让阅读人员能够轻松读懂每一行代码的意义,同时也为后期代码维护提供便利。在 Python 中,单行注释以 # 号开头,如下所示:

#第一个注释
print('Hello,World!')#第二个注释

Python 的多行注释用两个三引号'''包含起来,如下所示:
'''
第一行注释
第二行注释
'''
print('Hello,World!')

Python的行与缩进

Python 最具特色的就是使用缩进来表示代码块,不需要使用大括号。缩进的空格数是可变的,但是同一个代码块的语句必须包含相同的缩进空格数,缩进不一致会导致代码运行错误。

正确缩进的示例如下:
if True:
    print("True")
else
    print("False")
错误缩进的示例如下:

if True:
    print("True")
else:
print("False")

多行语句

Python 通常是一行写完一条语句,但语句很长的话,可以通过反斜杠(\)来实现多行语句。

weekdays ="Little Robert asked his mother for two cents.\
'What did you do with the money I gave you yesterday?'"
print(weekdays)

这里的输出结果为“Little Robert asked his mother for two cents.'What did you do with the money I gave you yesterday?'”。

等待用户输入

Python 中的 input() 函数是用来与用户进行交互的,如下所示:
print("Who are you?")
you = input()
print("Hello!")
print(you)
此时,运行结果为“Who are you?”。

当用户输入 Lingyi,然后按【Enter】键时,程序会继续运行,其输出结果如下:

Hello!
Lingyi

变量

变量赋值

在编辑区输入以下代码:

a = 42
print(a)

注意:Python 的变量无须提前声明,赋值的同时也就声明了变量。

变量命名

Python 中具有自带的关键字(保留字),任何变量名不能与之相同。在 Python 的标准库中提供了一个 keyword 模块,可以查阅当前版本的所有关键字,如下所示:

import keyword
keyword.kwlist

Python数据类型

Python 中拥有 6 大数据类型:number(数字)、string(字符串)、list(列表)、tuple(元组)、sets (集合)、dictionary(字典)。

数字

Python 3 支持 4 种类型的数字:int(整数类型)、float(浮点类型)、bool(布尔类型)、complex (复数类型)。

在 Python 3 中可以使用 type() 函数来查看数字类型,如下所示。

a=1 b=3.14 c=True
print(type(a)) print(type(b)) print(type(c))

输出结果<class'int'> 输出结果<class'float'> 输出结果 <class'bool'>

Python3 所支持的运算类型包括加法、减法、除法、整除、取余、乘法和乘方:
print((3+1)) #加法运算,输出结果是 4
print((8.4-3)) #减法运算,输出结果是5.4
print(15/4) #除法运算,输出结果是 3.75
print(15//4) #整除运算,输出结果是 3
print(15%4) #取余运算,输出结果是 3
print(2*3) #乘法运算,输出结果是 6
print(2**3) #乘方运算,输出结果是 8

字符串

字符串就是在单引号、双引号和三引号之间的文字。单引号示例:print('welcome to hangzhou'),其中所有的空格和制表符都照原样保留。单引号与双引号的作用其实是一样的,但是当引号里包含单引号时,则该引号需使用双引号,例如:print("what’s your name?")。三引号可以指示一个多行的字符串,也可以在三引号中自由使用单引号和双引号,如下所示:

print('''Mike:Hi,How are you?
LiMing:Fine,Thank you!and you?
Mike:I'm fine,too!''')

如果要在单引号字符串中使用单引号本身,在双引号字符串中使用双引号本身,则需要借助于转义符(\),如下所示:

print('whar\'s your name?')
#输出结果如下:whar's your name?

注意:在一个字符串中,行末单独的斜杠号表示下一行继续,而不是开始写新的一行,另外可以使用双反斜杠(\\)来表示反斜杠本身,而 \n 表示换行符。

如果想要指示某些不需要使用转义符进行特别处理的字符串,那么需要指定一个原始字符串。原始字符串通过给字符串加上前缀 r 或 R 的方式指定,比如需要原样输出 \n 而不是令其换行,则代码如下:

print(r"Newlines are indicated by \n")
#输出结果是Newlines are indicated by \n

字符串的截取格式如下所示:

字符串常量[start_index:end_index+1]

此处解释下为什么加 1:字符串的截取从 start_index 开始,到 end_index 结束,也就是大家常理解的左闭右开,如下所示:
str = 'Lingyi'
print(str[0]) #输出结果为L
print(str[1:4]) #输出结果为ing
print(str[-1]) #输出结果为i
尝试下面的代码:
num = 1
string = '1'
print(num+string)
此时,运行程序会报错,错误提示如下所示,为什么呢?

TypeError: unsupported operand type(s) for +: 'int' and 'str'

字符串(string)只是 Python 中的一种数据类型,下面的语句在赋值的时候右侧用了单引号,数据类型是字符串(string)。

string = '1'

下面语句的数据类型为整型(integer)。

num = 1

不同的数据类型之间是不能进行运算的,但是,不同数据类型可以相互转换,以上代码通过修改后就可以正常运行,修改后的代码如下:
num = 1
string = '1'
num2 = int(string)
print(num+num2)
注意,“+”号用在字符串中间是连接符,用在数值中间是运算符:int() 是将括号中的数值或者文本转换成整型数据类型。

运行后,即时窗口中打印的结果是 2,如图 15 所示。

运行结果
图 15 运行结果

四则基础运算如下:
a = 1
b = 2
c = a+b
print(c)
因为相加的双方是数值型,此时“+”号是运算符,运行结果如下:

3

相加的双方是字符型数据,此时“+”号是连接符:
a = 1
b = 2
c = 'a'+'b'
print(c)
运行结果如下:

ab

列表

Python 列表是任意对象的有序集合,列表写在中括号 [] 里,元素之间用逗号隔开。这里的任意对象,既可以是列表嵌套列表,也可以是字符串,如下所示:

list = ["Python",12,[1,2,3],3.14,True]
print(list)#运行结果为['Python', 12, [1, 2, 3], 3.14, True]

每个 list(list 是笔者自定义的变量)中的元素从 0 开始计数,如下代码可以选取 list 中的第一个元素:
list = [1,2,3,4]
print(list[0])
#运行结果为1
列表删除操作可以使用 remove 方法,只需要在变量名字后面加个句号就可以轻松调用,PyCharm 有自动联想功能,选中目标方法或者函数,按【Tab】键即可快速键入,如图 16 所示:

PyCharm自动联想功能
图 16 PyCharm自动联想功能

以下代码用于删除第 3 个元素,并用 print 将结果打印出来。其中 remove 方法用于删除列表的元素:

list.remove(3)
print(list)#运行结果是[1, 2, 4]

元组

元组(tuple)与列表类似,不同之处在于元组的元素不能修改。元组写在小括号()里,元素之间则用逗号隔开,如下所示:
tuple = ['abc',76,'ly',898,5.2]
print(tuple[1:3])
#运行结果是[76,'ly']

集合

集合(set)是一个无序不重复元素的序列,可以使用大括号 {} 或者 set() 函数创建集合。需要注意的是,一个空集必须使用 set() 函数创建而不能使用大括号 {},因为大括号 {} 是用来创建空字典的,如下所示:
age = {18,19,18,20,21,20}
print(age)
#运行结果是{18, 19, 20, 21}

字典

字典是一种可变容器模型,且可存储任意类型对象,用 {} 标识。字典是一个无序的键(key)值(value)对的集合,格式如下所示:

dic = {key1 : value1, key2:value2}

接下来建立一个字典,代码如下:
information = {
    'name':'liming',
    'age':'24'
}
print(information)
#运行结果是{'name': 'liming', 'age': '24'}
其中 name 是一个 key(键),liming 是一个 value(值)。

字典增加数据时,可以使用下面的方法:
information['sex'] = 'boy'
print(information)
#运行结果是{'name': 'liming', 'age': '24', 'sex': 'boy'}
字典删除数据时,可以使用 del 函数,代码如下:
del information['age']
print(information)
#运行结果是{'name': 'liming', 'sex': 'boy'}

Python 语句与函数

条件语句

接下来进行登录验证操作,首先给变量 password 赋值,然后判断 password(密码)是否正确,正确就打印“login success!”(登录成功!),错误就打印“wrong password”(密码错误):
password = '12345'
if password == '12345':
    print('login sucess!')
else
    print('wrong password')
在 Python 中判断是否相等可以使用“==”两个等号(单个等号是赋值)。

条件语句的语法如下:

if 判断条件:
    执行语句...
else:
    执行语句...

循环语句

在 Python 中要注意缩进,条件语句根据缩进来判断执行语句的归属。

下面用 for 语句实现 1 至 9 的累加:
sum = 0;
for i in range(1,10,1):#不包含 10,实际为1-9
    sum = i + sum
print(sum)
#运行结果是45
其中 range 表示范围,i 从 1(第 1 个参数)开始迭代,每次加 1(第 3 个参数),直到 i 变成了 10(第 2 个参数)结束,因此当 i=10 时不执行语句,for 循环是 9 次迭代。# 号代表注释,# 号后面的文本将不会执行。在 PyCharm 中,如果要注释代码,则可以选中代码后按组合键【Ctrl+/】。

for 的语法如下:

for 迭代变量 in 迭代次数:
    执行语句...

如果是列表或者字典,就不用 range() 函数,直接用列表或者字典,此时 i 表示列表或者字典中的元素,代码如下:
list = {1,2,3,4}
for i in list:
    print(i)
运行结果如下:

1
2
3
4

函数

在刚刚接触的函数中,print() 是将结果打印出来的函数,int() 是将字符串类型转换成数据类型的函数。类似这种函数,统称为内建函数,内建函数可以直接调用。

有内就有外,外建函数其实就是通常所讲的自定义函数。

自定义函数的语法如下:

def f(x):
    定义过程
    return f(x)

def(define 即定义)是创建函数的方法,下面用 def 创建方程:y=5x+2:
def y(x):
    y = 5*x + 2
    return y
#下面调用自定义函数y
d = y(5)
print(d)
#运行结果是 27

30 分钟以后怎么办?

这篇 Python 基础教程只是让从没有接触过 Python 的读者对 Python 有个初步的印象,所以很多知识点都没有谈到;例如,本教程没有提到切片、模块、类和对象、文件操作、进程线程、图形界面、网络编程等。

不过,这些知识点也不太可能在 30 分钟内学会,好在只要入门了,有了基础,就能利用网上很多资源继续学习。当然,如果有一本纸质书,就更好了,这方面我推荐《Python基础教程》《Python编程快速上手》《Python 3程序开发指南》《Python编程:从入门到实践》。

下面是一些我觉得不错的网上资源:

所有教程

优秀文章