Python学习 (二)

来源:互联网 发布:bi工程师属于大数据吗 编辑:程序博客网 时间:2024/05/24 15:40

第二章

软件的如果没有一种系统的方法将会变得非常可怕。

2.1 软件开发流程

         阐述需求:弄清楚到底要解决什么问题。

         确定计划:明确程序能完成什么任务,简单来说就是输入input与输出output是什么,

以及他们之间的关系

         建立构思:阐述程序架构,设计算法

         实施构思:根据构思将算法用语言实现,本书用Python

         测试调试:

         维护程序:

        

2.2 一个实例:温度转换程序

         我们来考虑下面这个案例:小影对摄氏度不熟悉,而是习惯看华氏度,她希望可以编写一个软件帮她自己动解决这个问题,于是这个案例可以按如下过程解决。

         阐述需求:小影不熟悉摄氏度,而希望看到华氏度。

确定计划:输入为摄氏度,输出为华氏度,关系为:F=(9/5)C+32

建立构思:算法的基本模式:Input,Process,Output(IPO),程序要求用户输入数据,然后

                     经过转换生成输出,并在电脑上显示。

实施构思:往往并不立即用特定语言实现,而是先写成伪码再装换成代码。

伪码:

Input the temperature in degrees Celsius (call it celsius)

Calculate fahrenheit as 9/5 celsius + 32

Output Fahrenheit

代码:

# convert.py

# A program to convert Celsius temps to Fahrenheit

# by: Suzie Programmer

def main():

celsius = input("What is the Celsius temperature? ")

fahrenheit = 9.0 / 5.0 * celsius + 32

print "The temperature is", fahrenheit, "degrees Fahrenheit."

main()

 

2.3 程序的元素

       1.名称

       模块,函数,或变量的名称叫做标识符,标识符必须以字母或下划线开头,Python对大小写敏感,注意以下保留字

 

       2.表达式

       变量要被赋值然后才能用于表达式中,否则会提示Name Errot。运算符中,+,-,*,/c语言相通,幂函数为**。注意在表达式中空格可有可无,不会影响正确性。请注意,9/59.0/5.0不同,后面会提到。

 

2.4 输出语句

       Python有一系列严格的语法和语义规则,以print语句为例:

       Print

       Print<expr>

       Print<expr>,<expr>,…,<expr>

       Print<expr>,<expr>,…,<expr>,

总之,一个print语句包括print关键字和一系列由逗号连起来的表达式。注意若以逗号结尾,则下一句print输出会紧接在上一句结尾处。

      

2.5 赋值语句

       1.简单赋值

       <variable>=<expr>

       2.输入赋值

       <variable>=input(<prompt>)

       习惯在prompt的结尾加一个空格,使得用户输入是不会紧贴在冒号后面:

       x=imput(“please input a number: ”)

       3.同时赋值

       <var>,<var>,…,<var>=<expr>,<expr>,…,<expr>

同时赋值是指各个表达式的赋值是同时发生的,比如,在数据交换时,要让x,y值交换,可以用:

temp=x

x=y

y=temp

但是在Python中,只需一句简单的同时赋值语句:

x,y=y,x

因为两个表达式同时执行赋值,因此不会造成覆盖。

       同时赋值还用在输入语句中,如:

x,y=input(“please input two numbers: ”)

       输入时,只要将个输入值用逗号隔开即可。

 

 

 

2.6 有限循环

一个Pythonfor循环有以下形式:

fo r<var> in <sequence>:

<body>

       body循环体可以是任意数量的语句,这些语句的起始与结束由for语句下一行开始的tab符标志。

       sequence序列是由方括号括起来的一系列值,值的数量决定循环次数,如:

for i in [1,3,5,7]:

       print i

       一个有趣的事情是,循环会改变程序的控制流,通常我们认为计算机串行执行序列,但是循环语句会使Python回头重复执行,这种循环语句叫做控制结构control structures,程序员常用流图(flowcharts表示控制结构,比如for的流图