课程名:Python语言程序设计
参考书籍:Python语言程序设计【美】Y.DanielLiang著李娜译
学习者:颜业明@广东海洋大学@湛江
学习时间:2016年4月2日
09:00-12:3014:30-17:30
例题:π的计算。由于π是个无理数。无法通过精确公式进行计算。只有使用近似求解。国际公认使用蒙特卡洛方法进行计算。
蒙特卡洛法:在一个单位正方形构造一个四分之一圆,然后在正方形中抛洒大量的点。计算圆内点的数量,和总的抛洒数目。
IPO
输入抛洒点数量
计算抛洒点到原点距离,判断点在圆内还是圆外,统计圆内抛洒点总数
输出π值
代码如下
数字类型
Python包含的三种基本数字类型:整数类型,浮点类型,复数类型
整数类型与数学的整数概念一致。与其他语言不通,Python没有范围限制!
浮点数类型:表示含有小数点的数字
复数类型:与数学复数概念一致。
算术运算符:
+,-,*,/分别代表加减乘除。//代表整除,结果不含小数点**代表幂运算。例如4**2
= 16,%代表取余例如6%4 = 2
abs():求绝对值
科学计数法:使用e来代表10的次方。。例如1.23e-3代表1.23*10-3
增强型赋值运算符:
在编程中常常会出现这样的情况:sum = sum
+i我们时常会将一个变量修改一下在赋值给相同变量。在使用sum=
sum
+i这样的表达时,开发者总是会感觉不方便。于是在Python中出现了增强型的赋值运算符来解决这个问题。我们可以将上述式子简化成sum+=i。。。使用方法一目了然,这里不多赘述了。这种方法对于其他运算符来说都是成立的。
math库
random库:
示例图:
字符串类型
字符串是一连串的字符。在Python中,你除了可以处理字符,还可以除理字符串。Python中的字符串必须用(”)(’)括起来!
由于在Python语言中,”和’两个标点具有特殊左右,一般无法将它正常输出。我们一般使用转义符来实现输出,例如:print(“\””)
一些常见的转义序列:
字符转义序列名称
\b退格
\t制表
\n换行(最常用)
字符串是一个字符序列:字符串最左段标记为0,依次增加。字符串中的编号叫做“索引”Python同时允许使用负数从字符串右边末尾向左边进行索引,最右索引值为-1
字符串可以传递给一个变量。例如:greet =“Hello”
单个索引辅助访问字符串的特定位置,即可以通过索引访问字符串具体的每个字符。例如上面的字符串,可以这样:
输出结果为:e。。也可以这样
,输出结果为l
我们也可以使用一个范围来获得固定范围的值[:]注意,这里不包括end的值。例如,greet[1:3]返回值为“el”
字符串之间可以通过
+或*进行连接
例如”hello”+”
YYm”结果”hello YYm”
3*”hello”结果:hellohellohello
:len()函数可以返回字符串的长度。str()函数可以将其他类型数据转换为字符串。、
一个示例:
功能:输入一个月份,返回对应月份名称缩写、
选择,循环结构:在编程语言学习中,选择循环是编程语言最最最基础的部分,所以,要学好一门编程语言,就必须对选择循环有充分的理解和娴熟的运用能力。
首先谈一下选择结构,我们想象下有这么一个程序,我们输入一个分数,然后程序给我们输出一个等级结果。分数段为0-100.。怎么去实现呢?这就需要运用到我们的选择结构了。在Python中,if语句就是选择结构。。它的语法如下:
if <条件表达式>:
语句内部
我们观察下。有一个关键字,if中文意思就是如果。。后面加上一条件表达式加上冒号,如果条件成立的话,就执行力语句内部的语句。。。非常值得注意的是,语句内部,需要进行一次缩进。Python是缩进敏感的语言,如果忘记缩进,Python会认为这些语句不属于if内部。程序就会出错、
例如我们设计一个程序计算正方形的面积,我们需要接收一个边长值。大家知道,边长是不可能小于等于0的。所以这个程序就必须使用if语句。程序与运行结果如下:
这样,我们可以发现,当输入数字大于0时正确输出。输入数据小于0时,并不会输出一个对应值得平方。不过程序还不够完美,如果它能够输出一顿话提示就好了,这里我们就需要引入else了。很简单,看下示例就能懂了。如下:
else就是否则,当条件不满足if的要求时就是执行else内的语句。
在使用if语句时,有一个错误很容易犯,那就是漏掉了条件后的冒号,这必须注意。学过java,c语言的同学不要把语法搞混,if后面不能带括号。
还记得上面的分数等级程序吗。这个程序我们需要运用到elif语句。程序如下:
逻辑运算符:有时候我们需要同时判断几个条件,就像上面的几个例子中,我们的分数需要同时满足两个条件。这是我们就需要用到逻辑运算符。and就是逻辑与,or就是或,not就是否,这与数学的概念是一致的。
关于条件句的写法:其实条件句接受的是一个布尔类型的变量,我们看下这个你就懂了(注意大小写哦)
出来的结果就是0
我们都知道>=,<=,怎么用了,那么不等于呢,不等是!=,那么等于是不是=呢,这样就错了,比较运算中,等于应该是==。。。这里新学编程的应该十分注意。一个=是用来赋值的,;两个==是比较运算,返回False或True、
循环语句
上述判断等级的程序中每次运行只能判断一次。。判断完成程序就会停止工作,怎么让程序一直工作呢。这里就需要用到循环语句了。
我们可以看到,我们加入一个whileTrue之后,程序就会一直进行。。使用while时,依然需要注意缩进问题。
我们使用while来计算一下1到100的和。代码如下:
i = 1
sum = 0
whilei<=100:
sum+= i
i += 1
print(sum)
从示例可以看到具体语法,这里就不多赘述了。
下面介绍一种很重要的循环结构,for循环。Python的for循环通过一个序列中的每个值来进行迭代、
上述程序,我们可以将它讲话成这样:
sum2 = 0
for i in range(101):
sum2+=i
print(sum2)
range(a,b)返回一系列的整数,a。。。b-1
for循环的语法如下:
for var in sequence:
body
如果我们知道了循环的次数,我们通常使用for循环、
关键字break和continue
break:退出循环语句
continue:结束这一次循环,进入下一次循环
下面,我们设计一个程序,来打印九九乘法表。