初识Python-python教程总结

来源:互联网 发布:工作流程如何优化 编辑:程序博客网 时间:2024/06/07 06:20

学习目标:掌握Python基本语法、熟悉debug以及常用的python库。

Python 是一种面向对象的脚本语言,不需要编译。python有一个明确定义的语法,一个广泛的标准库。python可以嵌入到C/C++程序中。
python 环境搭建:Linux下源码安装的方式(1,./configure 2,make 3,make install)此外,环境的变量的配置,在path中添加python所在安装目录。注意python的四个环境变量。
可使用shell也可以使用集成开发环境进行开发。
Python编程:
1、交互式编程,打开方法为在命令行输入python命令即可启动交互式编程。
2、脚本式编程,将python命令写入后缀名为.py的文件中,然后使用解释器执行该脚本文件。
  • python test.py 或 chmod +x test.py  ./test.py
  • 注意这两种方式,脚本文件的编写不同,前者直接在文件中编辑python命令语句,后者需在文件开头声明 #!/usr/bin/python

3、python标识符,以字母、数字、下划线组成,但不能以数字开头,以下划线开头的标识符有特殊含义,单下划线开头表示不能直接访问的,需通过类提供的接口进行访问,双下滑线开头代表类的私有成员。
4、python使用缩进来写模块。缩进必须一致,否则会报错。换行代表语句的结束,一条语句多行显示需要在每行结束使用斜杠“\”。
5、python单行注释使用#,多行注释使用三引号''' 或“““。
6、python等待输入:raw_input("please input\n") 
  • python等待输出:sys.stdout.write('hello') 或使用print输出,print默认换行,不换行就在末尾加,
  • 执行sys.argv的运行结果:

  • arg[0]代表程序所在路径,argv[1]为命令行输入参数。
7、python变量存储在内存空间,变量赋值后才可以使用。
  • python的标准数据类型包括:Numbers(数字) String(字符串) List(列表) Tuple(元祖) Dictionary(字典)
  • 字符串下标从0开始,截取字符串可以使用[头下标,尾下标],不包含尾下标,加号+是字符串连接,*是字符串重复。
  • 程序如下:

  • 输出为:

列表List,使用方法与字符串类似,下标从左至右从0开始,或从右至左从-1开始。列表元素包括数字、字符、字符串、甚至列表嵌套。
程序为:


输出为:


元组用()标识,元素之间用‘ , ’隔开,与列表类似,但元组不能二次赋值,相当于只读列表。
字典Dictionary,与列表的不同在于,列表是有序的元素组合,字典是无序的元素组合。字典中的元素是用键来存取的,字典用"{ }"标识。字典由索引(key)和它对应的值value组成。
字典的测试用例如下:
程序为:


输出为:


8、if 条件判断、while循环、for循环基本语法,注意break和continue的使用。
  • python中的pass语句为空语句,只是占位符,保持程序的完整性。
9、自定义函数的使用
  • 语法:
  • def function (参数):
  • function 
  • 调用:
  • function(str)
       参数传递
  • 1、传入可更改对象,如列表和字典
  • 2、传入不可更改对象,如数字、字符串、元组;
  • 注意:必备参数,关键字参数,缺省参数(使用默认值),不定长参数。
  • 匿名函数 lambda
  • 变量的作用域:全局变量和局部变量,通过添加global 标识,将函数内局部变量更改为全局变量。
  • 列表反转程序:

  • 输出结果:

  • 方法二:


10、python 模块、包
  • python中模块指一个以.py结尾的python文件,包含了python的对象定义和语句,使用import引入。
  • 语法为:import 模块名.函数名
  • python包:包是一个分层次的文件目录结构,它定义了一个由模块及子包,和子包下的子包等组成的 Python 的应用环境。简单来说,包就是文件夹,但该文件夹下必须存在 __init__.py 文件, 该文件的内容可以为空。__int__.py用于标识当前文件夹是一个包。
  • __init__.py文件内容示例:
  • #!/usr/bin/python# -*- coding: UTF-8 -*-
  •  if __name__ == '__main__':
  •     print '作为主程序运行'else:
  •     print 'package_runoob 初始化'
  • 系统相关的信息模块:import sys
  • sys.argv 是一个 list,包含所有的命令行参数.    
  • sys.stdout sys.stdin sys.stderr 分别表示标准输入输出,错误输出的文件对象.    
  • sys.stdin.readline() 从标准输入读一行 sys.stdout.write("a") 屏幕输出a    
  • sys.exit(exit_code) 退出程序    
  • sys.modules 是一个dictionary,表示系统中所有可用的module    
  • sys.platform 得到运行的操作系统环境    
  • sys.path 是一个list,指明所有查找module,package的路径.  
  • 操作系统相关的调用和操作: import os
  • os.environ 一个dictionary 包含环境变量的映射关系   
  • os.environ["HOME"] 可以得到环境变量HOME的值     
  • os.chdir(dir) 改变当前目录 os.chdir('d:\\outlook')   注意windows下用到转义     
  • os.getcwd() 得到当前目录     
  • os.getegid() 得到有效组id os.getgid() 得到组id     
  • os.getuid() 得到用户id os.geteuid() 得到有效用户id     
  • os.setegid os.setegid() os.seteuid() os.setuid()     
  • os.getgruops() 得到用户组名称列表     
  • os.getlogin() 得到用户登录名称     
  • os.getenv 得到环境变量     
  • os.putenv 设置环境变量     
  • os.umask 设置umask     
  • os.system(cmd) 利用系统调用,运行cmd命令  
11python 下的debug--python中异常的处理
  • try....except...else异常处理结构
  • try:<语句>        #运行别的代码
  • except <名字>:<语句>        #如果在try部份引发了'name'异常
  • except <名字>,<数据>:<语句>        #如果引发了'name'异常,获得附加的数据
  • else:<语句>        #如果没有异常发生
  • except后面也可以不跟任何异常类型或多个异常类型。
  • try....finally语句无论是否发生异常,都将执行最后都代码。
  • 使用raise触发异常:raise [Exception [, args [, traceback]]]
  • 用户自定义异常:
  • 通过创建一个新的异常类,程序可以命名它们自己的异常。异常应该是典型的继承自Exception类,通过直接或间接的方式。
  • 自定义一个基类为RuntimeError的异常类:


  • 其中e为Networkerror类的一个实例,输出结果如下:


12、python文件的IO
  • 1、打印到屏幕 print 用逗号隔开
  • 2、标准输入
  • raw_input(" ") 从屏幕中输入一行,并会去掉结尾的换行符。
  • input(" ") 与raw_input类似,可以接收一个表达式的输入,并将结果输出到屏幕。
  • 3、打开和关闭文件
13、python的面向对象编程
  • 创建类、类的实例:


14、类的继承:


输出结果为:


类的私有属性:两个下划线开头,声明该类的私有方法,不能在类的外部调用。
单下划线、双下划线、头尾双下划线说明:
  • _foo: 以单下划线开头的表示的是 protected 类型的变量,即保护类型只能允许其本身与子类进行访问,不能用于 from module import *
  • __foo: 双下划线的表示的是私有类型(private)的变量, 只能是允许这个类本身进行访问了。
  • __foo__:定义的是特列方法,类似__init__()之类的。

原创粉丝点击