python二级备考
第二章 编写简单程序
创造程序的几个阶段
- 分析问题
- 确定解决什么问题。
- 确定规格说明
- 明确描述该程序需要做什么。
- 创建设计
- 明确程序需要怎么做。
- 实现设计
- 将设计翻译并放入计算机。
- 测试/调试程序
- 使用程序,看是否符合1.2.3的预期。
- 维护程序
- 根据用户需求不断更新。
- IPO:输入、处理、输出
程序的要素
名称
- 所有的名称都被称为标识符。
- 每一个标识符必须以字母或下划线开头,后跟字母、数字或下划线的任意序列。
- 单个标识符不能包含任何空格。
- 标识符需要区分大小写。
- python关键字:
FalseclassfinallyisreturnNonecontinuelambdatryTruedeffromnonlocalwhileanddelglobalnotwithaselififoryieldassertelseimportpassbreakexceptinraise
表达式
- 产生或计算数据值的程序代码片段称为“表达式”
- 文本数据称为字符串。
- python可以计算加减乘除和乘方。
- 空格在表达式中没有作用。
输出语句
赋值语句
- 右侧的表达式被求值,然后产生的值与左侧命名的变量相关联
赋值输入
input- 单纯
input后输入的任何东西都会存储为字符串。 - 如果需要输入数字,那么就需要用
eval(input())的结构。
同时赋值
- 三变量交换:
x,y=y,x - 同时赋值:
x,y=
循环
- 确定循环:执行次数已知的循环
for循环:反复进行某个式子的迭代运算for语句最重要的用途是用于技术循环,通常使用range函数残生数字序列
终值
第三章 数字计算
数据的类型
- int:整数,可以是正数或是负数。对int操作产生int数据。
- float:小数,对float操作产生float数据。
- type:展示任何数据的数据类型
- python内置数值操作:
操作符 操作 + 加 - 减 * 浮点除 / 指数 ** 指数 abs() 绝对值 // 整数除 % 取余
其中,整数除//和浮点除/得出的结果是截然不同的。例如,python当中有以下两个程序:
10/310//310/5输出结果:
3.333333333333333532.0可知/的输出结果一定是一个浮点数float
类型转换和舍入
- 这里首先有一个混合float和int的例子:
>>>x=5.0*2print("x=",x)在自然情况下,python输出结果为:
>>>x=10.0在python程序当中,python会自动将int转换为浮点数float,以此避免小数部分转换时候造成的风险。
- 如果希望可以转换两种数据,可以直接参考以下的例子:
>>>int(4.5)4>>>float(2)2.0>>>int(float(3.3))3.3>>>float(int(2))2int无法做到四舍五入。
但是你可以使用内置函数round来进行四舍五入的计算。
>>>round(3.27)3>>>round(3.74)4显然,使用round会产生一个int值。当然,round值也可以指定小数点后的某位进行四舍五入,例如:
>>>pi=3.141592653589793>>>round(pi,2)3.14>>>round(pi,3)3.142- 同时,
int和float也可以将数字字符串转换为数字。这样可以很好的替代eval工作,防止在该输入数字的地方输入不法代码的侵入。但这样就会失去同时输入的能力。
math库
import math # Makes the math library available.是一个用于提取Math库的标识语句,它可以告诉python你现在正在从Math库当中提取你想要用的内容。- 以下是Math库的一些内容:
| python | 数学 | 描述 |
|---|---|---|
| pi | π | π的近似值 |
| e | e | e的近似值 |
| sqrt(x) | x | x的平方根 |
| sin(x) | sin x | x 的正弦 |
| cos(x) | cos x | x 的余弦 |
| tan(x) | tan x | x 的正切 |
| log(x) | ln x | x 的自然对数(以e为底) |
| log10(x) | Log10 x | x 的常用对数(以10为底) |
| exp(x) | ex | e 的x次方 |
| ceil(x) | [x] | 最小的>=x的整数 |
| floor(x) | [x] | 最大的<=x的整数 |
阶乘
- IPO处理:
- 输入计算阶乘的数
- 计算n阶乘
- 输出
- 因为6!=6 * 5 * 4 * 3 * 2 * 1,这在计算机当中是一个名为“累积器”的算法模式。
- 我们可以运用
range来实现列表的定义,比如说以下:
>>>print("This program calculates the factorial of numbers from a starting number to an ending number.")x=float(input("Please enter a starting number:"))y=float(input("Please enter an ending number:"))fact=1forfactorinrange(int(x),int(y)+1):fact=fact*factorprint("The factorial of numbers from",int(x),"to",int(y),"is",fact)以上程序就可以简单的实现从某数到某数的累计相乘。