上一篇我们简单了解了Python语言,还做了一个简单的Hello world!程序,在计算机上通过程序向世界问好。
今天,我们一起来学习零基础快速入门第二篇,要想零基础学习一门计算机语言还是有一定的难度的,尤其对没有学习过计算机编程,没有编程基础的小伙伴们,下面我们就从程序的运行开始了解编程语言。
我们写完一段程序代码,要在计算机中运行起来,就要把编写的程序代码转换成计算机能读董的二进制代码,才能实际运行完成代码对应的功能。程序代码转换成二进制代码有编译和解释两种方式,简单地说,编译就是把程序代码文件,完整的转化成可执行程序(.exe、.com等)文件,然后那个文件就可以直接在计算机中运行了;解释通俗的理解就象我们跟外国人打交道,我们又不懂外语,这时候就需要一个翻译,我们说一句,翻译把它翻译成外国人能听懂的语句,这样对方就理解了我们的意思,Python语言就是解释执行的计算机语言,代码执行的时候每执行一行,通过Python的解释器将代码转化成机器能够识别的二进制代码,然后执行。
理解了Python是解释执行的,对我们后面学习会有很大的帮助,由于不需要编译,执行的时候省去了很多编译时间。闲言少叙,下面我们就进入这节我们要学习的主要内容:Python3 基础语法。
1、编码
默认情况下,Python 3 源码文件以 UTF-8 编码,所有字符串都是 unicode 字符串。 当然你也可以为源码文件指定不同的编码:
# -*- coding: cp-1252 -*-
上述定义允许在源文件中使用 Windows-1252 字符集中的字符编码,对应适合语言为保加利亚语、白罗斯语、马其顿语、俄语、塞尔维亚语。
现在,我们建一个Python文件lesson1.py,它的第一行是固定格式#!+python程序路径,第二行一般就放上面字符集编码设置的语句,也可以将这句放在文件头的下方,文件的头部可以放一些文件的基本信息,版本、作者、版权等,这部分内容不是固定的,可根据自己喜好进行调整,样子如下:
1 #!/python/python
2 # -*- coding: GB2312 –*-
3 ##
4 ## Copyright (C) 2011-2020 BowenCentury
5 ## All right reserved.
6 ## 文件名称:lesson1.py
7 ## 摘 要:
8 ## 作者:urhero
9 ## 创建日期:2021-08-30 15:09:10
10 ## 修改记录:
11 ##
2、标识符
- 第一个字符必须是字母表中字母或下划线 _ 。
- 标识符的其他的部分由字母、数字和下划线组成。
- 标识符对大小写敏感。
在 Python 3 中,可以用中文作为变量名,非 ASCII 标识符也是允许的了,标识符包括变量、函数名、类名等等,后面课程的内容中会有详细的讲解。关于标识符有几点是要注意的地方:
1)标识符的名字不能以数字开头,按照上面的第一条规则就不会出错。
2)标识符不能是Python中的关键字和保留字,就比如说if等等。就拿if来说,其在python中是有意义的,你再拿他当标识符,会导致程序混乱,所以说,关键字是不能用的。而保留字是python没有使用,但其以后可能会用到,所以将他留起来,不让使用。
3)也不建议使用Python中的函数名作为标识符,因为这个会导致函数被覆盖。
下面及以后的举例都是基于本系列课程第一节大家按照网上搜到的方法,安装好Python,并配置了运行环境的基础上的,比如下面的代码在Python IDLE下执行。
例如:给print赋值
>>> print=111
>>> print(print)
Traceback (most recent call last):
File "", line 1, in
print(print)
TypeError: 'int' object is not callable
我们给print赋值之前,他是一个函数,赋值之后变成数字111了,数字当然不能当做函数去调用,所以会导致程序运行报错。
3)以下划线开头的标识符是有特殊意义的。
以单下划线开头 _foo 的代表不能直接访问的类属性,需通过类提供的接口进行访问,不能用 from xxx import * 而导入。
以双下划线开头的 __foo 代表类的私有成员,以双下划线开头和结尾的 __foo__ 代表 Python 里特殊方法专用的标识,如 __init__() 代表类的构造函数。
3、python保留字
保留字即关键字,我们不能把它们用作任何标识符名称。Python 的标准库提供了一个 keyword 模块,可以输出当前版本的所有关键字:
>>> 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']
4、注释
Python中单行注释以 # 开头,实例如下:
实例(Python 3.0+)
#!/usr/bin/python3
# 第一个注释
print ("Hello, Python!")
# 第二个注释
执行以上代码,输出结果为:
Hello, Python!
多行注释可以用多个 # 号,还有 ''' 和 """:
实例(Python 3.0+)
#!/usr/bin/python3
# 第一个注释
# 第二个注释
'''
第三注释
第四注释
'''
"""
第五注释
第六注释
"""
print ("Hello, Python!")
执行以上代码,输出结果为:
Hello, Python!
5、行与缩进
python最具特色的就是使用缩进来表示代码块,不需要使用大括号 {} 。
缩进的空格数是可变的,但是同一个代码块的语句必须包含相同的缩进空格数。实例如下:
实例(Python 3.0+)
if True:
print ("True")
else:
print ("False")
以下代码最后一行语句缩进数的空格数不一致,会导致运行错误:
实例
if True:
print ("Answer")
print ("True")
else:
print ("Answer")
print ("False") # 缩进不一致,会导致运行错误
以上程序由于缩进不一致,执行后会出现类似以下错误:
File "test.py", line 6 print ("False") # 缩进不一致,会导致运行错误 ^ IndentationError: unindent does not match any outer indentation level
6、多行语句
Python 通常是一行写完一条语句,但如果语句很长,我们可以使用反斜杠 \ 来实现多行语句,
实例
wholeentry = entry1 + entry2 + entry3 + \
entry4 + entry5 + entry6 + \
entry7 + entry8 + entry9
在 [], {}, 或 () 中的多行语句,不需要使用反斜杠 \,
wholeentry = ['entry1', 'entry2', 'entry3',
'entry4', 'entry5']
今天这期学习就到这儿了,今天讲的内容虽然不多,但是却是编写Python代码最基础的知识,需要花些时间把这些牵记,这样后面写出的代码风格一致,对慢慢形成自己的代码风格会有一定的帮助。所谓欲速则不达,虽然是快速入门教程,还是要一点儿一点儿来,前面慢点儿,后面就快起来了,从下节开始我们将通过一些很简单的实例小程序快速上手Python编程。
希望大家多多支持,你们的每一点一滴的支持都是对我继续分享最大的鼓励!!!