- *本节课内容参见:https://www.cnblogs.com/jin-xin/articles/7459977.html
运行第一个Python程序
print('hello world')
- 将文本文件保存为以.py结尾的文件,如hello_world.py ,在终端中,运行命令:Python hello_world.py,在终端中显示“hello world”
- Python2.x与Python3.x在终端中运行Python文件的方法一样,即:Python+空格+Python文件(与终端不在一个工作目录下是,需要加上Python文件的路径)
- #同时装有Python2和Python3时,应当把Python2的运行文件(即EXE文件)修改为Python2.exe,在终端中可以区分用的是哪个版本的Python运行的文件
变量
- 定义:将运算的中间结果暂时存储到内存上,以便后续代码调用
变量名
- 含义:变量名是指向内存中变量的名称,当变量没有指向其的变量名时,该变量将通过垃圾回收机制被释放掉
- 变量名命名的要求:1.必须由数字、字母、下划线的任意组合构成,且不能以数字开头;2.不能是Python中的关键字;3.具有可描述性(非强制性,不会报错);4.不能是中文或者是拼音(非强制,不会报错);5.变量名不能太长(非强制,不会报错)
#如果变量名报错,只用看违反了第一条还是第二条
- 命名形式,推荐下划线体 age_of_me=18
- 变量的赋值,赋值是以“=”实现的(在Python中,双等号“==”是判断是否相等的比较),先计算等号右边的内容,然后将值赋给等号左边的变量名
- Python中所有的量都是可以更改的,所以严格意义上,Python中是不存在常量的,不过Python中,约定俗称,变量名全部用大写字母表示的为常量,如:BIR_OF_CHINA=1949。
注释
- 用途:解释代码,方便维护
- 形式:1.#号后边的内容(单行注释);2..三引号(成对出现的三个单引号或者双引号,多行注释)
- 用在重要代码处,不要处处留注释
基础数据类型-初识
- 数字:整形(int);浮点型(float)
#可以参与的运算:加(+)、减(-)、乘(*)、除(/)、地板除(也叫取整,//)、求模(也叫取余,%)、幂(**)
- 字符串:用成对的单引号或双引号,甚至是三引号(用于多行字符串),括起来的内容(str)
#可以参与的运算:拼接(+,字符串与字符串之间进行的操作),重复n次(*n,字符串与整数之间的操作)
- bool值:只有两种状态,True和False
- 字符串类型可以转换为数字,使用int(str)方法,其中字符串必须由数字构成,否则报错;任意的数字类型都可以转化为字符串,使用str(int)方法,等同于数字两侧加引号
- 用type()方法来判别数据类型
用户交互:即人机对话,在Python中是指input()方法
-
name=input('what is your name?') age=input('请输入您的年龄') print(name,age)
- input()方法所产生的数据,其类型都是字符串
if条件语句(也叫流程控制)
- 在Python中要求强制缩进,即顶级代码顶行写,次级代码比上级代码缩进一个制表符位置(即table)
-
if 条件:满足顶级代码要求(也即顶级代码条件为真,下同)时的结果
if 条件:满足顶级代码条件的结果 else:不满足顶级代码条件的结果
双分支实例
name=input('请输入你所熟悉的编程语言:') if name=='python':print('人生苦短,我用%s'%name) else:print('少年,考虑下python吧!')
if 条件:满足顶级代码条件的结果 elif 条件:不满足之前顶级代码的条件但满足本顶级代码条件时的结果 elif 条件:不满足之前顶级代码的条件但满足本顶级代码条件时的结果 。。。 。。。 elif 条件:不满足之前顶级代码的条件但满足本顶级代码条件时的结果 elif 条件:不满足之前顶级代码的条件但满足本顶级代码条件时的结果 else:之前所有顶级代码条件都不满足的结果
多分支实例
name=input('请输入你所熟悉的编程语言:') if name=='python':print('人生苦短,我用%s'%name) elif name=='c':print('en,学c的都是大牛吧') elif name=='php':print('学PHP容易让人误解为拍黄片吧?') else:print('少年,考虑下python吧!')
if 条件:if 条件:if 条件: 。。。 。。。
嵌套实例
name=input('请输入你所熟悉的编程语言:') age=int(input('请输入学习时间:')) if name=='python':if age > 5:print('perfect')elif 3<age<=5:print('good')else:print('just so so') else:print('少年,考虑下python吧!')
- if条件语句注意事项:1.语句后面的冒号必须是英文状态下的冒号(:);2.缩进可以是table制表符,也可以是空格,但在一个Python文本中,不可以table和空格混用,否则报错,Python官方推荐和默认缩进使用table制表符,编程过程中应当使用table,而非空格;3.在多分支中,从上至下,只要满足一个条件(即只要有一个条件为真),后面的代码将不会再执行;4.if / else的结果可以直接写在else的冒号“:”之后,但仅限于else的结果比较简单时,如下代码,将执行打印444
if 5>6:print(666) else:print(444)
while循环语句
- 基本语句
while 条件:循环体
#条件只要是可以比较得出真假的条件都可以,当条件为真时,循环体将执行一次,然后再次判断条件,条件为真时,循环体再执行一次,条件如果一直为真,循环体将无限循环;直到当条件为假时,循环将终止。
- 无限循环
print('循环体开始之前') while True:print('hello world')print('你好,世界') print('循环体结束之后')
#代码执行后,将会打印“循环体开始之前”,然后条件为真,“hello world”和“你好,世界”将会无限循环下去(这也称之为死循环),即使终止代码执行,“循环体结束之后”也不会打印
- “死掉的”循环
print('循环体开始之前') while False:print('hello world')print('你好,世界') print('循环体结束之后')
#代码执行后,将会打印“循环体开始之前”,然后条件为假,循环体将不会执行,直接执行循环体之后的代码,打印“循环体结束之后”,这种循环就真的是死掉的循环了
- 动态循环
print('循环体开始之前') n=1;a=0 while n<=100:print('n为%s' % n)a += nprint('从%s加到%s的结果为%s'%(1,n,a))n += 1 print('循环体结束之后')
#循环不是无限的也不是死掉的,而是根据条件的真假而动态改变的,条件为真时,循环体执行,条件为假时,循环体终止
- break终止循环
print(111) while True:print(222)print(333)breakprint(444) print(555)
#当while循环体遇到break关键字时,循环体终止并跳出循环
- continue结束本次循环继续下一次循环(注意时继续而不是终止)
n=0 while n<100:n+=1if 5<n<95:continueelse:print(n)
#当n的值大于5而小于95时,本次循环结束,直接开启下一轮循环
-
break和continue在多层循环语句中,只对其所在的最内层的循环体起作用,如例
n=0 while n<20:print(555)n+=1while True:if n>=1:break
#代码将会打印20次555,尽管有break关键字,但break关键字只在内层的循环体中,并不影响外部循环体