(自用)Python学习二(windows+eclipse+pydev+python3.5.1):基本语法

来源:互联网 发布:学c和java哪个好找 编辑:程序博客网 时间:2024/06/06 07:33

距离上次学习Python已经很久了,中间发生了一些事情,经历了工作变更。最近才有些时间,重新捡起来学习。

Python是一种直译式、交互式、面向对象的计算机编程语言。

Python是一种交互性的语言。

交互性是指不需要创建脚本文件,直接通过Python的解释器的交互模式来进行编写代码。

上一篇文章中介绍了windows上安装Python开发环境,通过windows的控制台或者直接点击Python的交互式客户端。如下:


输入以下文本信息:

print("hello,world!");
按Enter,输出如下


Python是一种脚本语言。

脚本语言是指通过创建脚本文件来编写代码,然后在Python环境中直接运行,输出结果,并不需要像Java,C++那样需要编辑后再执行输出。

Python标识符。

在python里,标识符有字母、数字、下划线组成。
在python中,所有标识符可以包括英文、数字以及下划线(_),但不能以数字开头。
python中的标识符是区分大小写的。
以下划线开头的标识符是有特殊意义的。以单下划线开头(_foo)的代表不能直接访问的类属性,需通过类提供的接口进行访问,不能用"from xxx import *"而导入;
以双下划线开头的(__foo)代表类的私有成员;以双下划线开头和结尾的(__foo__)代表python里特殊方法专用的标识,如__init__()代表类的构造函数。

Python保留字符。

下面的列表显示了在Python中的保留字。这些保留字不能用作常数或变数,或任何其他标识符名称。

所有Python的关键字只包含小写字母。

andexecnotassertfinallyorbreakforpassclassfromprintcontinueglobalraisedefifreturndelimporttryelifinwhileelseiswithexceptlambdayield

行和缩进

学习Python与其他语言最大的区别就是,Python的代码块不使用大括号({})来控制类,函数以及其他逻辑判断。python最具特色的就是用缩进来写模块。

缩进的空白数量是可变的,但是所有代码块语句必须包含相同的缩进空白数量,这个必须严格执行。如下所示:

'''Created on 2016年11月22日@author: zhao'''if True:    print("True");else:    print("False");
执行以下代码会报错(在Eclipse上在执行前会自动提示):

'''Created on 2016年11月22日@author: zhao'''if True:    print("True");else:print("False");
报错如下:

在eclipse上,如果一个用tab键一个用回车键,会提示一个Bad Indentation,代码如下

'''Created on 2016年11月22日@author: zhao'''if True:    print("True");else: print("False");
提示如下:



可以正常运行输出结果,不知道是不是3.5的特性还是编译器自动校正了。不过为了保险起见,大家还是严格遵守相同数量的空格吧。

建议你在每个缩进层次使用 单个制表符 或 两个空格 或 四个空格 , 切记不能混用

Python语句中一般以新行作为为语句的结束符。

但是我们可以使用斜杠( \)将一行的语句分为多行显示,如下所示:

'''Created on 2016年11月22日@author: zhao'''total=2+\3print(total)

语句中包含[], {} 或 () 括号就不需要使用多行连接符。如下实例:

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

Python 引号

Python 接收单引号(' ),双引号(" ),三引号(''' """) 来表示字符串,引号的开始与结束必须的相同类型的。

其中三引号可以由多行组成,编写多行文本的快捷语法,常用语文档字符串,在文件的特定地点,被当做注释。

'''Created on 2016年11月22日@author: zhao'''word = 'word'sentence = "这是一个句子。"paragraph = """这是一个段落。包含了多个语句"""print(paragraph)

Python注释

python中单行注释采用 # 开头。

'''Created on 2016年11月22日@author: zhao'''# 第一个注释print("Hello, Python!");  # 第二个注释

输出结果:

Hello, Python!

注释可以在语句或表达式行末:

name = "Madisetti" # 这是一个注释

python 中多行注释使用三个单引号(''')或三个双引号(""")。

'''Created on 2016年11月22日@author: zhao''''''这是多行注释,使用单引号。这是多行注释,使用单引号。这是多行注释,使用单引号。'''"""这是多行注释,使用双引号。这是多行注释,使用双引号。这是多行注释,使用双引号。"""

Python空行

函数之间或类的方法之间用空行分隔,表示一段新的代码的开始。类和函数入口之间也用一行空行分隔,以突出函数入口的开始。

空行与代码缩进不同,空行并不是Python语法的一部分。书写时不插入空行,Python解释器运行也不会出错。但是空行的作用在于分隔两段不同功能或含义的代码,便于日后代码的维护或重构。

记住:空行也是程序代码的一部分。

等待用户输入

下面的程序在按回车键后就会等待用户输入:

#!/usr/bin/pythoninput("\n\nPress the enter key to exit.")

以上代码中 ,"\n\n"在结果输出前会输出两个新的空行。一旦用户按下键时,程序将退出。

可以将输入赋给变量,如下所示:

'''Created on 2016年11月22日@author: zhao'''inputContent=input("\n\nPress the enter key to exit.")print(inputContent);
运行程序后,随意输入写字符,然后按Enter会打印你输入的字符串,如下:



同一行显示多条语句

Python可以在同一行中使用多条语句,语句之间使用分号(;)分割,以下是一个简单的实例:

'''Created on 2016年11月22日@author: zhao'''name="Jack";print(name);

执行以上代码,输入结果为:



多个语句构成代码组

缩进相同的一组语句构成一个代码块,我们称之代码组。

像if、while、def和class这样的复合语句,首行以关键字开始,以冒号( : )结束,该行之后的一行或多行代码构成代码组。

我们将首行及后面的代码组称为一个子句(clause)。

如下实例:

if expression :    suite elif expression :     suite  else :     suite 

命令行参数

很多程序可以执行一些操作来查看一些基本信,Python可以使用-h参数查看各参数帮助信息:

C:\Users\zhao>python -husage: python [option] ... [-c cmd | -m mod | file | -] [arg] ...Options and arguments (and corresponding environment variables):-b     : issue warnings about str(bytes_instance), str(bytearray_instance)         and comparing bytes/bytearray with str. (-bb: issue errors)-B     : don't write .py[co] files on import; also PYTHONDONTWRITEBYTECODE=x-c cmd : program passed in as string (terminates option list)-d     : debug output from parser; also PYTHONDEBUG=x-E     : ignore PYTHON* environment variables (such as PYTHONPATH)-h     : print this help message and exit (also --help)-i     : inspect interactively after running script; forces a prompt even         if stdin does not appear to be a terminal; also PYTHONINSPECT=x-I     : isolate Python from the user's environment (implies -E and -s)-m mod : run library module as a script (terminates option list)-O     : optimize generated bytecode slightly; also PYTHONOPTIMIZE=x-OO    : remove doc-strings in addition to the -O optimizations-q     : don't print version and copyright messages on interactive startup-s     : don't add user site directory to sys.path; also PYTHONNOUSERSITE-S     : don't imply 'import site' on initialization-u     : unbuffered binary stdout and stderr, stdin always buffered;         also PYTHONUNBUFFERED=x         see man page for details on internal buffering relating to '-u'-v     : verbose (trace import statements); also PYTHONVERBOSE=x         can be supplied multiple times to increase verbosity-V     : print the Python version number and exit (also --version)-W arg : warning control; arg is action:message:category:module:lineno         also PYTHONWARNINGS=arg-x     : skip first line of source, allowing use of non-Unix forms of #!cmd-X opt : set implementation-specific optionfile   : program read from script file-      : program read from stdin (default; interactive mode if a tty)arg ...: arguments passed to program in sys.argv[1:]Other environment variables:PYTHONSTARTUP: file executed on interactive startup (no default)PYTHONPATH   : ';'-separated list of directories prefixed to the               default module search path.  The result is sys.path.PYTHONHOME   : alternate <prefix> directory (or <prefix>;<exec_prefix>).               The default module search path uses <prefix>\lib.PYTHONCASEOK : ignore case in 'import' statements (Windows).PYTHONIOENCODING: Encoding[:errors] used for stdin/stdout/stderr.PYTHONFAULTHANDLER: dump the Python traceback on fatal errors.PYTHONHASHSEED: if this variable is set to 'random', a random value is used   to seed the hashes of str, bytes and datetime objects.  It can also be   set to an integer in the range [0,4294967295] to get hash values with a   predictable seed.


0 0