📅  最后修改于: 2020-12-23 04:45:54             🧑  作者: Mango
Python语言与Perl,C和Java有许多相似之处。但是,两种语言之间存在一定的区别。
让我们以不同的编程模式执行程序。
在不将脚本文件作为参数传递的情况下调用解释器将显示以下提示-
$ 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.
>>>
On Windows:
Python 3.4.3 (v3.4.3:9b73f1c3e601, Feb 24 2015, 22:43:06) [MSC v.1600 32 bit (Intel)] on win32
Type "copyright", "credits" or "license()" for more information.
>>>
在Python提示符下键入以下文本,然后按Enter-
>>> print ("Hello, Python!")
如果您正在运行旧版本的Python (Python 2.x),则将括号用作打印函数是可选的。这产生以下结果-
Hello, Python!
使用脚本参数调用解释器将开始执行脚本,并一直持续到脚本完成为止。脚本完成后,解释器不再处于活动状态。
让我们用脚本编写一个简单的Python程序。 Python文件的扩展名为.py 。在test.py文件中键入以下源代码-
print ("Hello, Python!")
我们假设您在PATH变量中设置了Python解释器。现在,尝试按以下方式运行此程序-
在Linux上
$ python test.py
这产生以下结果-
Hello, Python!
在Windows上
C:\Python34>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标识符是用于标识变量,函数,类,模块或其他对象的名称。标识符以字母A到Z或a到z或下划线(_)开头,后跟零个或多个字母,下划线和数字(0到9)。
Python不允许标点字符如@,$,和标识符%以内。 Python是区分大小写的编程语言。因此,人力和人力是Python中两个不同的标识符。
这是Python标识符的命名约定-
类名以大写字母开头。所有其他标识符以小写字母开头。
以单个下划线开头的标识符表示该标识符是私有的。
在标识符前面加上两个下划线开头表示一个很强的私有标识符。
如果标识符也以两个下划线结尾,则标识符是语言定义的特殊名称。
以下列表显示了Python关键字。这些是保留字,您不能将它们用作常量或变量或任何其他标识符名称。所有Python关键字仅包含小写字母。
and | exec | not |
as | finally | or |
assert | for | pass |
break | from | |
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
file_finish = "end"
file_text = ""
contents=[]
file_name=input("Enter filename: ")
if len(file_name) == 0:
print("Please enter filename")
sys.exit()
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 = input("Enter text: ")
contents.append(file_text)
if file_text == file_finish:
# close the file
file.close()
break
print(contents)
data = ' '.join([str(elem) for elem in contents])
print(data)
file.write(data)
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接受单引号(’),双引号(“)和三引号(”’或”“”)表示字符串字面量,只要相同类型的引号开始和结束字符串。
三重引号用于将字符串跨越多行。例如,以下所有都是合法的-
word = 'word'
sentence = "This is a sentence."
paragraph = """This is a paragraph. It is
made up of multiple lines and sentences."""
不在字符串字面量中的井号(#)是注释的开头。 #之后的所有字符,直到物理行的末尾,都是注释的一部分, 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完全忽略了它。
在交互式解释器会话中,必须输入一个空的物理行以终止多行语句。
程序的以下行显示提示,并显示“按Enter键退出”的语句,然后等待用户采取行动-
#!/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. ]
您还可以以一种可以接受各种选项的方式对脚本进行编程。命令行参数是一个高级主题。让我们了解它。