Python3基础语法

Python语言有许多与Perl,C和Java的相似之处。不过,语言之间也有一些明显的差异。

第一个Python程序

让我们在不同的编程模式下执行程序。

交互模式编程

调用解释器,不用通过一个脚本文件作为参数,如下提示 -
$ python
Python 3.3.2 (default, Dec 10 2013, 11:35:01)
[GCC 4.6.3] on Linux
Type "help", "copyright", "credits", or "license" for more information.
>>>
在 Windows 系统上:
C:\Users\Administrator>python
Python 3.5.1 (v3.5.1:37a07cee5969, Dec  6 2015, 01:54:25) [MSC v.1900 64 bit (AM
D64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>>
在 Python 提示符下编写下面的文本代码,然后按Enter:
>>> print ("Hello, Python!") 

如果你使用的是 Python(Python2.X)的旧版本,在print 函数使用括号是一个可选项。这将产生以下的结果:

Hello, Python!

脚本编程模式

解释器调用一个脚本参数开始执行脚本,并一直持续到脚本完成。当脚本完成,解释器活动失效。

让我们在脚本中写一个简单的 Python 程序。Python文件使用 .py 扩展名。 创建一个文件 test.py 并写入以下代码:

print ("Hello, Python!") 

假设你已经在 PATH 变量中设置了 Python 解释器路径。 现在,试着如下运行这个程序 -

在Linux上执行
$ python test.py 
这将产生以下的结果:
Hello, Python!
在 Windows 上执行
C:\Python3>Python test.py
这将产生以下的结果:
Hello, Python!
让我们尝试使用另一种方式在Linux中执行 Python 脚本。下面是修改 test.py 文件 -
#!/usr/bin/python3

print ("Hello, Python!") 

假设你已经在 /usr/bin目录安装好了 Python 解释器。现在,试着如下运行这个程序 -

$ chmod +x test.py     # This is to make file executable
$./test.py
这将产生以下结果 -
Hello, Python!

Python标识符

Python标识符是用来标识变量,函数,类,模块或其他对象的名称。标识符是以字母A到Z开始或a〜z或后跟零个或多个字母下划线(_),下划线和数字(0〜9)。

Python标识符范围内的不容许有如:@, $ 和 % 符号。Python是一种区分大小写的编程语言。因此,Manpower 和 manpower 在Python中是两种不同的标识符。

下面是 Python 标识符命名的约定 -
  • 类名称使用大写字母。所有其它标识符开始使用小写字母。
  • 开头使用一个下划线的标识符表示该标识符是私有的。
  • 开始以两个前导下划线的标识符表示强烈私有的标识符。
  • 如果标识符使用两个下划线作为结束时,所述标识符是语言定义的特殊的名字。

保留字

Python 的关键字如下列出。这些是保留字,不能把它们作为常量或变量或任何其他标识符名称。 所有Python的关键字仅包含小写字母。

and exec Not
as finally or
assert for pass
break from print
class global raise
continue if return
def import try
del in while
elif is with
else lambda yield
except


行和缩进

Python不使用大括号({})来表示的代码块类和函数定义或流程控制。代码块由行缩进,这是严格执行表示。

在缩进位的数目是可变的,但该块内的所有语句的缩进量必须相同。 例如 -

if True:
    print ("True")
else:
  print ("False")
但是,以下块产生一个错误 -
if True:
    print ("Answer")
    print ("True")
else:
    print "(Answer")
  print ("False") 

因此,Python中所有连续不换行,同样数量的空格缩进将形成一个块。下面的例子有各种各样的语句块 -

注意:不要试图理解其中的逻辑在这个时候。只要你明白,即使他们不使用括号在各个模块。

#!/usr/bin/python3

import sys

try:
  # open file stream
  file = open(file_name, "w")
except IOError:
  print ("There was an error writing to", file_name)
  sys.exit()
print ("Enter '", file_finish,)
print "' When finished"
while file_text != file_finish:
  file_text = raw_input("Enter text: ")
  if file_text == file_finish:
    # close the file
    file.close
    break
  file.write(file_text)
  file.write("\n")
file.close()
file_name = input("Enter filename: ")
if len(file_name) == 0:
  print ("Next time please enter something")
  sys.exit()
try:
  file = open(file_name, "r")
except IOError:
  print ("There was an error reading file")
  sys.exit()
file_text = file.read()
file.close()
print (file_text)

多行语句

在Python语句通常使用一个新行作为结束。但是,Python 允许使用续行字符(\)表示让行可以连续下去。例如-

total = item_one + \
        item_two + \
        item_three 

语句中包含 [], {}, 或() 括号内不需要使用续行字符。 例如−

days = ['Monday', 'Tuesday', 'Wednesday',
        'Thursday', 'Friday']

在Python的引号

Python接受单引号('),双引号(“)和三('''或”“”)引用来表示字符串,只要是同一类型的引号开始和结束。
三重引号可用于跨越多个行字符串。例如,下面所有的都是合法的 -
word = 'word'
sentence = "This is a sentence."
paragraph = """This is a paragraph. It is
made up of multiple lines and sentences."""

Python中的注释

哈希符号(#)这是一个字符作为注释的开头。在#之后到行末的所有字符都是注释的一部分,Python解释器会忽略它们。

#!/usr/bin/python3

# First comment
print ("Hello, Python!") # second comment
这将产生以下结果 -
Hello, Python!
你可以声明或表达式之后的同一行写上注释 -
name = "Madisetti" # This is again comment
Python没有多行注释功能。所以你应该单行注释每一行如下-
# This is a comment.
# This is a comment, too.
# This is a comment, too.
# I said that already.

使用空行

仅包含空格,可能带有注释行,如果是空行Python会完全忽略它。
在交互式解释器会话,则必须输入一个空的物理行来终止多行语句。

等待用户

程序的下面一行显示提示声明说:“按回车键退出”,并等待用户操作 -
#!/usr/bin/python3

input("\n\nPress the enter key to exit.") 

在这里,“\n\n”是用来显示实际行之前创建的两条新行。一旦用户按下键时,程序就结束。 这是一个很好的技巧,以保持控制台窗口打开,直到用户来指定终止应用程序运行。

在一行多条语句

分号(;)允许给在单行有多条语句,而不管语句开始一个新的代码块。下面是使用分号的示例-
import sys; x = 'foo'; sys.stdout.write(x + '\n')

多重声明组为套件

一组单独的语句,它们使单一代码块化在Python称为套件。复杂的语句,如 if, while, def, 和 class 需要一个标头行和一个套件。

头部行开始的语句(以关键字),并用冒号终止(:),后面跟一行或多行组成套件。例如 -
if expression : 
   suite
elif expression : 
   suite 
else : 
   suite

命令行参数

很多程序都可以运行,为您提供关于应当如何运行的一些基本信息。 Python中可以使用 -h 来做到这一点 -
$ python -h
usage: python [option] ... [-c cmd | -m mod | file | -] [arg] ...
Options and arguments (and corresponding environment variables):
-c cmd : program passed in as string (terminates option list)
-d     : debug output from parser (also PYTHONDEBUG=x)
-E     : ignore environment variables (such as PYTHONPATH)
-h     : print this help message and exit

[ etc. ] 

您也可以在这样的,它应该接受各种选择的方式编写脚本。命令行参数是一个高级的主题,当你已经学习了Python概念后,其余部分的内容我们将在接下来的章节中学习。



上一篇: Python3环境安装设置 下一篇: Python3变量类型