-1st- if条件语句
if condition_1: statement_block_1[elif condition_2: statement_block_2else: statement_block_3]
1) elif可以有多个,语法结构不必全,下同
2) 每个条件后面要使用冒号 :
3) 使用缩进来划分语句块
4) python不支持switch、case语句
5) 可以嵌套
6) 也可以使用if not
-2nd- 循环语句
01 While
While conditions: statement_1 statement_2 ……[else: statements]
通过设置条件永远为true,实现无限循环,ctrl+c中段
02 For
for <variable> in <sequence>: <statements>[else: <statements>]
03 跳出循环
某个statement写为break,跳出整个循环,不执行else语句
某个statement写为continue,跳出本次循环的剩余语句,执行下一次循环
04 遍历序列
Range(数字序列),如range(5)——由此创建一个序列list(range(5))
range(start,stop,foot)
-3rd- Pass占位符
pass是空语句,是为了保持程序结构的完整性,pass 不做任何事情
-4th- 容错机制
Try: statementsExcept: Statements
-5th- 面向对象的语言
01 概念
计算机语言可以归为面向过程语言和面向对象语言
面向过程就是分析出解决问题所需要的步骤,然后用函数把这些步骤一步一步实现,使用的时候一个一个依次调用就可以了;
面向对象是把构成问题事务分解成各个对象(自定义函数、类等对象),建立对象的目的不是为了完成一个步骤,而是为了描叙某个事物在整个解决问题的步骤中的行为。
02 python中面向对象技术
类(Class):用来描述具有相同的属性和方法的对象的集合。它定义了该集合中每个对象所共有的属性和方法。对象是类的实例。
1)实例化:创建一个类的实例,类的具体对象。
a) 定义
class ClassName: <statement-1> . . .
b) 属性引用
和 Python 中所有的属性引用一样的标准语法:obj.name
c) __private_attrs:两个下划线开头,声明该属性为私有,不能在类的外部被使用或直接访问。
2)方法:类中定义的函数,不同的是必须包含参数 self, 且为第一个参数,self 代表的是类的实例。
a) 类定义了 __init__() 方法,类的实例化操作会自动调用def __init__(self) 方法。(即一个已命名的函数)
b) 方法重写:如果从父类继承的方法不能满足子类的需求,可以对其进行改写,这个过程叫方法的覆盖(override),也称为方法的重写。
3)继承:即一个派生类(derived class)继承基类(base class)的字段和方法。继承也允许把一个派生类的对象作为一个基类对象对待。
a) 定义
classDerivedClassName(BaseClassName1,……): <statement-1> . . . <statement-N>
b) 其实就是一个派生类调用基类方法、处理等的过程
c) 可以多继承
03 变量
类变量:类变量在整个实例化的对象中是公用的。类变量定义在类中且在函数体之外。类变量通常不作为实例变量使用。
局部变量:定义在方法中的变量,只作用于当前实例的类。
实例变量:在类的声明中,属性是用变量来表示的,这种变量就称为实例变量,实例变量就是一个用 self 修饰的变量。
04 数据成员
类变量或者实例变量用于处理类及其实例对象的相关的数据。
05 对象
通过类定义的数据结构实例。对象包括两个数据成员(类变量和实例变量)和方法。
-6th- 迭代器和生成器
自己创建函数,进行重复调用
01 定义
def 函数名(参数列表):'''解释'''#作为函数的文档字符串(docstring)保存,可选,建议 #函数体 return(表达式)#退出函数,返回一个值给调用方,不带表达式返回 None,仅执行函数中的操作
I 参数列表是没有类型的,只是一个引用的标识
1) 传递的参数若是不可变类型,则是复制了一个参数
2) 传递的参数若是可变类型,则可以对本身进行修改
3) 可以指定默认参数(调用时不传递时使用),如def 函数名(name='sid',age),默认参数若是可变参数,在后续调用中则会叠加
def f(a, L=[]): L.append(a) return Lprint(f(1))print(f(2))print(f(3))
这将输出:
[1][1, 2][1, 2, 3]
如果你不想让默认值在后续调用中累积,你可以像下面一样定义函数:
def f(a, L=None): if L is None: L = [] L.append(a) return L
II 解释
1) 第一行应该是关于对象用途的简介。简短起见,不用明确的陈述对象名或类型。这一行应该以大写字母开头,以句号结尾。
2) 如果文档字符串有多行,第二行应该空出来,与接下来的详细描述明确分隔。接下来的文档应该有一或多段描述对象的调用约定、边界效应等。
02 调用
可以在另一个函数中、主程序中调用
(以上内容大多粘贴至
https://www.runoob.com/python3/(除特别声名),并非原创,如遇陌生名词,可半懂不懂,后面回过头再看。(文章声明原创只为了能够将文章加入—Python学习笔记专辑,便于大家查看)