关闭

python初学-02常用概念

标签: python
214人阅读 评论(0) 收藏 举报
分类:
python的几个常提及到的概念
一、函数
      函数是有组织的,可重复使用的代码,用于执行一个单一的,相关的动作的块。函数为应用程序和代码重用的高度提供了更好的模块。正如我们知道的,Python的print()等许多内置函数,但也可以创建自己的函数。这些函数称为用户定义函数。        (1)定义一个函数
      可以定义函数,以提供所需的功能。下面是简单的规则来定义Python函数。
      函数块以开始关键字def后跟函数名和括号中(())。
      任何输入参数或参数应该放在这些括号内。还可以定义这些括号内的参数。函数的第一个语句可以是一个可选的声明 - 该函数或文档字符串的文档字符串。每个函数中的代码块以冒号(:)开头并缩进。该语句返回[表达式]退出功能,可选地传递回一个表达式给调用者。不带参数return语句返回None。
语法:
def functionname( parameters ):"function_docstring"
   function_suite
   return [expression]
默认情况下,参数具有一个位置的行为和需要,它们被定义为通知他们以相同的顺序。
例子:
这是最简单的Python函数形式。这个函数接受一个字符串作为输入参数,并打印标准的屏幕上。
def printme( str ):"This prints a passed string into this function"print str
   return
          (2)调用函数
定义一个函数只给出它的名称,指定要被包括在功能和结构的代码块的参数。
一旦函数的基本结构确定后,可以通过从其他函数或直接从Python提示符调用它执行它。以下是示例调用printme()函数:
#!/usr/bin/python# Function definition is heredef printme( str ):"This prints a passed string into this function"print str;return;# Now you can call printme function
printme("I'm first call to user defined function!");
printme("Again second call to the same function");
当执行上面的代码中,产生以下结果:
I'm first call to user defined function!
Again second call to the same function
二、模块
          一个模块可以在逻辑上组织Python代码。将相关的代码到一个模块中,使代码更容易理解和使用。模块是可以绑定和借鉴任意命名属性的Python对象。
           (1)简单地说,一个模块是由Python代码的文件。一个模块可以定义函数,类和变量。模块还可以包括可运行的代码。
例子:
Python代码的模块名为aname通常位于一个名为aname.py。下面是一个简单的模块,support.py作为例子
def print_func( par ):
   print "Hello : ", par
   return
            (2)引用模块
import语句:
           可以通过在其他一些Python源文件执行import语句来使用任何Python源文件作为一个模块。import的语法如下:
import module1[, module2[,... moduleN]
当解释器遇到import语句,它导入(import)模块如果模块出现在搜索路径。搜索路径是一个目录列表,该解释器导入模块之前搜索。例如,导入模块hello.py,需要把下面的命令在脚本的顶部:
#!/usr/bin/python
# Import module support
import support
# Now you can call defined function that module as follows
support.print_func("Zara")
当执行上面的代码,产生以下结果:
Hello : Zara
       注:一个模块被加载一次,不管导入的次数。这可防止模块执行发生多次导入.
三、类
        Python是面向对象的语言。
        如果没有任何以往面向对象(OO)的编程的经验,那么可能要了解一些基本的入门课程就可以了,或者至少某种形式的教程,让你有了解基本概念。但是,这里会比较少地介绍面向对象编程(OOP):
          (1)OOP术语概述:
类: 用户定义的原型对象,它定义了一套描述类的任何对象的属性。属性是数据成员(类变量和实例变量)和方法,通过点符号访问。
类变量:这是一个类的所有实例共享的变量。类变量在类,但外面的任何类的方法定义。类变量不被用作经常作为实例变量。
数据成员:保存与类和对象关联的数据的类变量或实例变量。
函数重载:一个以上的行为特定功能的分配。执行的操作所涉及的对象(自变量)的类型不同而不同。
实例变量:所定义的方法内,只属于一个类的当前实例的变量。
继承:类的特点,即都是由它派生其他类的转移。
实例:某一类的一个单独对象。属于类Circle一个obj对象,例如,是类Circle的一个实例。
实例化:创建一个类的实例。
Method : 一种特殊的函数,函数在类定义中定义。
对象:这是由它的类中定义的数据结构的唯一实例。一个对象包括两个数据成员(类变量和实例变量)和方法。
运算符重载:一个以上的函数功能,特定的操作符分配。
        (2)创建类:
类语句将创建一个新的类定义。类的名称紧跟在关键字class后跟一个冒号,如下所示:
class ClassName:'Optional class documentation string'
   class_suite
类有一个文档字符串,它可以通过类名.__ doc__访问。
class_suite由所有定义的类成员,数据属性与函数组件的语句。
例子
下面是一个简单的Python类的例子:
class Employee:'Common base class for all employees'
   empCount = 0def __init__(self, name, salary):self.name = name
      self.salary = salary
      Employee.empCount += 1def displayCount(self):print "Total Employee %d" % Employee.empCount
   def displayEmployee(self):print "Name : ", self.name,  ", Salary: ", self.salary
empCount是一个类变量,其值将是这个类的所有实例共享。这可以从类中或外部进行访问,访问形式为employee.empCount。第一个方法__init__()是一种特殊的方法,这就是所谓的类构造函数或当创建该类的一个新实例Python调用的初始化方法。声明就像正常函数中一样,不同的是第一个参数到每个方法是类的方法。 Python增加了self参数列表;不需要把调用的方法都它列入。
        (3)创建实例对象:
要创建一个类的实例,调用类名并传递任何参数给__init__方法接收。
"This would create first object of Employee class"
emp1 = Employee("Zara", 2000)"This would create second object of Employee class"
emp2 = Employee("Manni", 5000)
访问属性:
可以访问使用点运算符来访问对象的属性。而类变量使用类名来访问,如下所示:
emp1.displayEmployee()
emp2.displayEmployee()print "Total Employee %d" % Employee.empCount
四、集合
       1、 集合(set):把不同的元素组成一起形成集合。集合对象是一组无序排列的可哈希的值:集合成员可以做字典的键
        2、分类:可变集合、不可变集合
              可变集合(set):可添加和删除元素,非可哈希,不能作字典的键,也不能作其他集合的元素。
              不可变集合(frozenset):与上面恰恰相反
        3、创建集合:
                集合没有自己的语法特点,只能通过集合的工厂方法set()和frozenset()创建
        4、访问集合
                 由于集合本身是无序的,所以不能为集合创建索引或切片操作,只能循环遍历或使用in、not in来访问或判断集合元素。
0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:147756次
    • 积分:2192
    • 等级:
    • 排名:第17267名
    • 原创:70篇
    • 转载:32篇
    • 译文:0篇
    • 评论:17条
    关于我

    [ 职业 ]: java工程师

    [ 总述 ]: 一个曾经以为可以改变世界的年轻人

    [ 致自己 ]
    世界有多残酷,
    我们就该有多坚强!

    [ 联系 ]: zhoudong_dream@163.com

    文章分类
    友情链接