一.头文件
1.1 进入Python交互模式:
打开终端输入命令Python3
(Python
后可紧跟系统已安装版本的版本号,若只有Python
命令则进入Mac OS系统自带版本交互模式。另外可以移除系统自带的版本,把新版本放到指定的位置后可直接使用命令Python
就是最新版本了),回车进入Python交互模式,它的提示符是>>>
如下图所示
在交互模式的提示符
>>>
下,直接输入代码,按回车,就可以立刻得到代码执行结果,如56+12
结果是68
; 如果要让Python打印出指定的文字,可以用print()
函数,然后把希望打印的文字用单引号或者双引号括起来,但不能混用单引号和双引号:1.2 退出Python交互模式:
输入命令exit()
或者quit()
回车即可退出Python交互模式,或者使用快捷键ctrl+d
。
1.3 脚本式编程
命令行模式和Python交互模式注意点:
在命令行模式下,可以执行python
进入Python交互式环境,也可以执行python hello.py
运行一个.py
文件。但是执行一个.py
文件只能在命令行模式执行。
通过命令行模式执行一个.py
文件先创建一个文件名为:test.py
文件
vi test.py
#!/usr/bin/env python
print ("Hello,World!")
print ("100 + 23 = ",100+23)
保存后进入文件目录执行终端命令:python3 test.py
后结果如下图所示:
此外在Linux/Unix系统中,你可以在脚本顶部添加以下命令让Python脚本可以像SHELL脚本一样可直接执行:
#! /usr/bin/env python3
然后修改脚本权限,使其有执行权限,命令如下:
chmod +x hello.py
执行以下命令:
./test.py
输出结果为:
Hello, Python!
二.注释
Python中的注释有多种,有单行注释,多行注释,批量注释,中文注释也是常用的。
2.1 单行注释:
井号(#)常被用作单行注释符号,在代码中使用#
时,它右边的任何数据都会被忽略,当做是注释。#
号右边的内容在执行的时候是不会被输出的。
print ("test") #输出test
2.2 多行注释:
多行注释用三个单引号 ''' 或者三个双引号 """ 将注释括起来,例如:
#!/usr/bin/python3
'''
这是多行注释,用三个单引号
这是多行注释,用三个单引号
这是多行注释,用三个单引号
'''
print("Hello, World!")
#!/usr/bin/python3
"""
这是多行注释,用三个单引号
这是多行注释,用三个单引号
这是多行注释,用三个单引号
"""
print("Hello, World!")
2.3 python中文注释方法:
在Python3.0之前编写代码的时候,避免不了会出现或是用到中文,这时候你需要在文件开头加上中文注释。比如创建一个python list,在代码上面注释上它的用途,如果开头不声明保存编码的格式是什么,那么它会默认使用ASKII码保存文件,这时如果你的代码中有中文就会出错了,即使你的中文是包含在注释里面的。但是现在Python3.x版本默认编码的格式是
utf-8
,因此在Python3.x版本标明编码格式是不必要的。
#coding=utf-8
或者:
#coding=gbk
2.4 特殊注释:
比如#! /usr/bin/python
这句注释的意思就是告诉LINUX/UNIX去找到python的解释器,大部分文件都不需要这个,只在要求也执行的文件中添加。此外还有以下形式(推荐写法):#!/usr/bin/env python3
这种用法先在 env(环境变量)设置里查找 python 的安装路径,再调用对应路径下的解释器程序完成操作。
#!/usr/bin/env python3
2.5 模块、函数和类的描述
python在注释中有一个非常有用的东西是 doc String
,它可以用于模块、函数和类的描述:(其实总结起来都是类)下面是一个标准的方法注释。他用三个引号标识("""),第一行大写开头,作简要概述,句号结尾,空一行开始详细的描述。好处是这些注释保存在方法的doc属性中,可以打印显示,这个其实和java 的doc也很相似。
三.基础语法
3.1 标识符
- 第一个字符必须是字母表中字母或下划线
_
。 - 标识符的其他的部分有字母、数字和下划线组成。
- 标识符对大小写敏感。
- 在Python 3中,非ASCII 标识符也是允许的了。
3.2 python保留字
保留字即关键字,我们不能把它们用作任何标识符名称。Python 的标准库提供了一个 keyword 模块,终端的Python交互模式下>>> import keyword
和>>> keyword.kwlist
可以输出当前版本的所有关键字:
['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']
3.3 行与缩进
python最具特色的就是使用缩进来表示代码块,不需要使用大括号{}
。缩进的空格数是可变的,但是同一个代码块的语句必须包含相同的缩进空格数(语句缩进数的空格数不一致,会导致运行错误)。实例如下:
if True:
print ("True")
else:
print ("False")
print ("False") # 缩进不一致,会导致运行错误
# (错误提示:IndentationError: unindent does not match any outer indentation level)
3.4 一条语句显示多行
Python 通常是一行写完一条语句,但如果语句很长,我们可以使用反斜杠(\
)来实现多行语句,例如:
total = item_one + \
item_two + \
item_three
在 []
, {}
, 或 ()
中的多行语句,不需要使用反斜杠(\
),例如:
total = ['item_one', 'item_two', 'item_three',
'item_four', 'item_five']
3.5 一行显示多条语句
Python可以在同一行中使用多条语句,语句之间使用分号(;
)分割,如:
#!/usr/bin/python3
import sys; x = 'runoob'; sys.stdout.write(x + '\n')
"""
执行以上代码,输出结果为:
runoob
7
"""
3.6 空行
函数之间或类的方法之间用空行分隔,表示一段新的代码的开始。类和函数入口之间也用一行空行分隔,以突出函数入口的开始。
空行与代码缩进不同,空行并不是Python语法的一部分。书写时不插入空行,Python解释器运行也不会出错。但是空行的作用在于分隔两段不同功能或含义的代码,便于日后代码的维护或重构。
记住:空行也是程序代码的一部分。
3.7 等待用户输入
执行下面的程序在按回车键后就会等待用户输入:
#!/usr/bin/python3
input("\n\n按下 enter 键后退出。")
"""
"\n\n"在结果输出前会输出两个新的空行。一旦用户按下键时,程序将退出。
"""
3.8 Print 输出
print 默认输出是换行的,如果要实现不换行需要在变量末尾加上 end=""
:
#!/usr/bin/python3
x="a"
y="b"
# 换行输出
print( x )
print( y )
"""输出结果:
a
b
"""
print('---------')
# 不换行输出
print( x, end=" " )
print( y, end=" " )
print()
"""输出结果:
ab
"""