第一周:Python基本语法元素

1.1 程序设计基本方法

1.1.1 计算机与程序设计
计算机的概念

-功能性

对数据的操作,表现为数据计算、输入输出处理和结果存储等。

-可编程性

根据一系列指令自动地、可预测地、准确地完成操作者的意图。

计算机的发展

计算机的发展参照摩尔定律,表现为指数方式。

-计算机硬件所依赖的集成电路规模参照摩尔定律发展;

-计算机运行速度因此也接近几何级数快速增长;

-计算机所能高效支撑的各类运算功能不断丰富发展。

-当今世界,唯一长达50年有效且按照指数发展的技术领域;

-计算机深刻改变人类社会,甚至可能改变人类本身;

-可预见的未来30年,摩尔定律还将持续有效。

摩尔定律Moore's Law

计算机发展历史上最重要的预测法则。

-Intel公司创始人之一 戈登·摩尔 在1965年提出;

-单位面积集成电路上可容纳晶体管的数量约每两年翻一番;

-CPU/GPU、内存、硬盘、电子产品价格等都遵循摩尔定律

程序设计

程序设计是计算机可编程性的体现。

-程序设计,亦称编程,深度应用计算机的主要手段;

-程序设计已经成为当今社会需求量最大的职业技能之一;

-很多岗位都将被计算机程序接管,程序设计将是生存技能。

程序设计语言

程序设计语言是一种用于交互(交流)的人造语言。

-程序设计语言,亦称编程语言,程序设计的具体实现方式;

-编程语言相比自然语言更简单、更严谨、更精确;

-编程语言主要用于人类和计算机之间的交互。

编程语言种类很多,但生命力强劲的却不多。

-编程语言有超过600种,绝大部分都不再被使用;

-C语言诞生于1972年,它是第一个被广泛使用的编程语言;

-Python语言诞生于1990年,它是最流行最好用的编程语言。

1.1.2 编译和解释
编程语言的执行方式

-源代码:采用某种编程语言编写的计算机程序,人类可读。

例如:result=2+3

-目标代码:计算机可直接执行,人类不可读(专家除外)。

例如:11010010 00111011

编译:一次性翻译,之后不再需要源代码(类似英文翻译)

将源代码一次性转换成目标代码的过程。

Compiler

源代码-->编译器-->目标代码

|

程序输入--> 程序执行-->结果输出

解释:每次程序运行时随翻译随执行(类似实时的同声传译)

将源代码逐条转换成目标代码同时逐条运行的过程。

源代码

\

\ interpreter

> 解释器-->结果输出 (执行解释过程的程序叫作解释器)

/

/

程序输入

静态语言和脚本语言

根据执行方式不同,编程语言分为两类

-静态语言:使用编译执行的编程语言

C/C++语言、Java语言

-脚本语言:使用解释执行的编程语言

Python语言、JavaScript语言、PHP语言

执行方式不同,优势各有不同。

-静态语言:编译器一次性生成目标代码,优化更充分、程序运行速度更快

-脚本语言:执行程序时需要源代码,维护更灵活,源代码在维护灵活、跨多个操作系统平台

1.1.3 程序的基本编写方法
IPO

程序的基本编写方法

-I: Input输入,程序的输入

-P: Process处理,程序的主要逻辑

-O: Output输出,程序的输出

理解IPO
输入

-程序的输入

文件输入、网络输入、控制台输入、交互界面输入、内部参数输入等。

-输入是一个程序的开始

输出

-程序的输出

控制台输出、图形输出、文件输出、网络输出、操作系统内部变量输出等。

-输出是程序展示运算结果的方式

处理

-处理是程序对输入数据进行计算产生输出结果的过程

-处理方法统称为算法,它是程序最重要的部分

-算法是一个程序的灵魂

问题的计算部分

一个待解决问题中,可以用程序辅助完成的部分

-计算机只能解决计算问题,即问题的计算部分;

-一个问题可能有多种角度理解,产生不同的计算部分;

-问题的计算部分一般都有输入、处理和输出过程。

编程解决问题的步骤

6个步骤

-分析问题:分析问题的计算部分,想清楚;

-划分边界:划分问题的功能边界,规划IPO;

-设计算法:设计问题的求解算法,关注算法;

-编写程序:编写问题的计算程序,编程序;

-调试测试:调试程序使正确运行,运行调试;

-升级维护:适应问题的升级维护,更新完善。

求解计算问题的精简步骤

-确定IPO:明确计算部分及功能边界;

-编写程序:将计算求解的设计变成现实;

-调试程序:确保程序按照正确逻辑能够正确运行。

1.1.4 计算机编程
计算机编程

编程能够训练思维

-编程体现了一种抽象交互关系、自动化执行的思维模式;

-计算思维:区别逻辑思维和证实思维的第三种思维模式;

-能够促进人类思考,增进观察力和深化对交互关系的理解。

编程能够增进认识

-编程不单纯是求解计算问题;

-不仅要思考解决方法,还要思考用户体验,执行效率等;

-能够帮助程序员加深用户行为以及社会和文化认识。

编程能够带来乐趣

-编程能够提供展示自身思想和能力的舞台;

-让世界增加新的颜色、让自己变得更酷、提升心理满足;

-在信息空间里思考创新、将创新变为现实

编程能够提高效率

-能够更好地利用计算机解决问题;

-显著提高工作、生活和学习效率;

-为理想的实现提供一种借助计算机的高效手段

编程带来就业机会

-程序员是信息时代最重要的工作岗位之一;

-国内外对程序员岗位的缺口都在百万以上闺规模;

-计算机已经渗透于各个行业,就业前景非常广阔

单元小结
  • 程序设计基本方法

  • 计算机的功能性和可编程性;

  • 编译和解释、静态语言和脚本语言;

  • IPO、理解问题的计算部分;

  • 掌握计算机编程的价值

1.2 Python开发环境配置

1.2.1 Python语言概述

Python译为“蟒蛇”;

Python语言拥有者是Python Software Foundation(PSF);

PFS是非盈利组织,致力于保护Python语言开放、开源和发展

Guido 1989年度假打发时间编写了Python

Python3是主流

Python命名灵感来源于一个喜剧组合

-Python语言是一个由编程牛人领导设计并开发的编程语言;

-Python语言是一个有开放、开源精神的编程语言;

-Python语言应用于火星探测、搜索引擎、引力波分析等众多领域

1.2.2 Python语言Windows/Mac/Linux系统开发环境
1.2.3 Python语言Web系统开发环境
1.2.4 Python程序编写与运行
Python的两种编程方式

交互式和文件式

-交互式:对每个输入语句即时运行结果,适合语法练习

-文件式:批量执行一组语句并运行结果,编程的主要方式

实例1:圆面积的计算

根据半径r计算圆面积

交互式

>>>r=25

>>>area=3.1415*r*r

>>>print(area)

1963.4375000000002

>>>print("{:.2f}".format(area))

1963.44

文件式

r=25

area=3.1415*r*r

print(area)

print("{:.2f}".format(area))

输出结果如下:

1963.4375000000002

1963.44

实例2:同切圆绘制

绘制多个同切圆

交互式

>>>import turtle

>>>turtle.pensize(2)

>>>turtle.circle(10)

>>>turtle.circle(40)

>>>turtle.circle(80)

>>>turtle.circle(160)

文件式

import turtle

turtle.pensize(2)

turtle.circle(10)

turtle.circle(40)

turtle.circle(80)

turtle.circle(160)

实例3:五角星绘制

绘制一个五角星

交互式

>>>from turtleimport*

>>>color('red','red')

>>>begin_fill()

>>>for i in range(5):

fd(200)

rt(144)

>>>end_fill()

>>>

单元小结
  • 程序设计基本方法

  • Python语言的发展历史

  • 选取一种系统平台构建Python开发环境

  • 尝试编写与运行3个Python小程序

1.3 实例1:温度转换

1.3.1“温度转换”问题分析
温度转换

温度刻画的两种不同体系

-摄氏度:中国等世界大多数国家使用

以1标准大气压下水的结冰点为0度,沸点为100度,将温度进行等分刻画

-华氏度:美国、英国等国家使用

以1标准大气压下水的结冰点为32度,沸点为212度,将温度进行等分刻画

需求分析

两种温度体系的转换

-摄氏度转换为华氏度

-华氏度转换为摄氏度

问题分析

该问题中计算部分的理解和确定

-理解1:直接将温度值进行转换

-理解2:将温度信息发布的声音或图像形式进行理解和转换

-理解3:监控温度信息发布渠道,实时获取并转换温度值

分析问题

-采用理解1:直接将温度值进行转换

温度数值需要表明温度体系,即摄氏度或华氏度

转换后也需要给出温度体系

划分边界

-输入:带华氏或摄氏标志的温度值

-处理:根据温度标志选择适当的温度转换算法

-输出:带摄氏或华氏标志的温度值

输入输出格式

标识放在温度最后,F表示华氏度,C表示摄氏度

82F表示华氏82度,28C表示摄氏28度

设计算法

根据华氏和摄氏温度定义,利用转换公式如下:

C=(F-32)/1.8

F=C*1.8+32

其中,C表示摄氏温度,F表示华氏温度

1.3.2“温度转换”实例编写

#TempConvert.py

TempStr=input("请输入带有符号的温度值:")

if TempStr[-1] in ['F','f']:

C=(eval(TempStr[0:-1])-32)/1.8

print("转换后的温度是{:.2f}C".format(C))

elif TempStr[-1] in ['C','c']:

F=1.8*eval(TempStr[0:-1])+32

print("转换后的温度是{:.2f}F".format(F))

else:

print("输入格式错误")

1.3.3"温度转换"实例举一反三
举一反三

Python语法元素理解

-温度转换程序共10行代码,但包含很多语法元素

-清楚理解这10行代码能够快速入门Python语言

-参考框架结构、逐行分析、逐词理解

输入输出的改变

-温度数值与温度标识之间关系的设计可以改变

-标识改变放在温度数值之前:C82,F28

-标识字符改变为多个字符:82Ce、28F

计算问题的扩展

-温度转换问题是各类转换问题的代表性问题

-货币转换、长度转换、重量转换、面积转换

-问题不同,但程序代码相似

1.4 Python程序语法元素分析

单元开篇
  • Python程序语法元素分析

-程序的格式框架

-命名与保留字

-数据类型

-语句与函数

-Python程序的输入输出

-“温度转换”代码分析

1.4.1程序的格式框架

-代码高亮:编程的色彩辅助体系,不是语法要求

-缩进:一行代码开始前的空白区域,表达程序的格式框架

缩进

缩进表达程序的格式框架

-严格明确:缩进是语法的一部分,缩进不正确程序运行错误

-所属关系:表达代码间包含和层次关系的唯一手段

-长度一致:程序内一致即可,一般用4个空格或1个TAB

注释

-注释:用于提高代码可读性的辅助性文字,不被执行

不被程序执行的辅助性说明信息

-单行注释:以#开头,其后内容为注释

# 这里是单行注释

-多行注释:以'''开头和结尾

'''这是多行注释第一行

这是多行注释第二行'''

1.4.2命名与保留字

-变量:程序中用于保存和表示数据的占位符号

变量

用来保存和表示数据的占位符号

-变量采用标识符(名字)来表示,关联标识符的过程叫命名

TempStr是变量名字

-可以使用等号(=)向变量赋值或修改值,=被称为赋值符号

TemStr="82F"#向变量TemStr赋值"82F"

关联标识符的过程

-命名规则:大小写、字母、下划线和汉字等字符及组合

如:TemStr,Python_Great,这是门Python好课

-注意事项:大小写敏感、首字符不能是数字、不与保留字相同

Python和python是不同变量,123Python是不合法的

保留字

被编程语言内部定义并保留使用的标识符

-Python语言有33个保留字(也叫关键字)

if,elif,else,in

-保留字是编程语言的基本单词,大小写敏感

if是保留字,If是变量

1.4.3数据类型
数据类型

供计算机程序理解的数据形式

-程序设计语言不允许存在语法歧义,需要定义数据的形式

需要给10,011,101关联一种计算机可以理解的形式

-程序设计语言通过一定方式向计算机表达数据的形式

"123"表示文本字符串123,123则表示数字123

10,011,101

-整数类型:10011101

-字符串类型:“10,011,101”

-列表类型:[10,011,101]

-字符串:

*由0个或多个字符组成的有序字符序列

*字符串由一对单引号或一对双引号表示

*字符串是字符的有序序列,可以对其中的字符进行索引

字符串的序号

正向递增序号和反向递减序号

使用[]获取字符串中一个或多个字符

-索引:返回字符串中单个字符 <字符串>[M]

-切片:返回字符串中一段字符子串 <字符串>[M:N](不包括最后一个字符)

数字类型:整数和浮点数

-整数 数学中的整数

-浮点数 数学中的实数,带有小数的部分

列表类型:由0个或多个数据组成的有序序列

-列表使用[]表示,采用逗号(,)分隔各元素

-使用保留字in判断一个元素是否在列表中

1.4.4语句与函数
赋值语句

由赋值符号构成的一行代码

-赋值语句用来给变量赋予新的数据值

-赋值语句右侧的数据类型同时作用于变量

分支语句

由判断条件决定程序运行方向的语句

-使用保留字if elif else构成条件判断的分支结构

-每个保留字所在行最后存在一个冒号(:),语法的一部分

冒号及后续缩进用来表示后续语句与条件的所属关系

函数

根据输入参数产生不同输出的功能过程

-类似数学中的函数,y=f(x)

-函数采用<函数名>(<参数>)方式使用

1.4.5 Python程序的输入输出
输入函数input()

从控制台获得用户输入的函数

-input()函数的使用格式:

<变量>=input(<提示信息字符串>)

-用户输入的信息以字符串类型保存在<变量>中

输出函数print()

以字符形式向控制台输出结果的函数

-print()函数的基本使用格式:

print(<拟输出字符串或字符串变量>)

-字符串类型的一对引号仅在程序内部使用,输出无引号

-print()函数的格式化:

print("转换后的温度是{:.2f}C".format(C))

{}表示槽,后续变量填充到槽中

{:.2f}表示将变量C填充到这个位置时取小数点后2位

评估函数eval()

去掉参数最外侧引号并执行余下语句的函数

1.4.6"温度转换" 代码分析

#TempConvert.py //注释:不被执行

TempStr=input("请输入带有符号的温度值:")

if TempStr[-1] in ['F','f']: //若最后一位是华氏温度值,则执行以下操作

C=(eval(TempStr[0:-1])-32)/1.8

print("转换后的温度是{:.2f}C".format(C))

elif TempStr[-1] in ['C','c']: //若最后一位是摄氏温度,则执行以下操作

F=1.8*eval(TempStr[0:-1])+32

print("转换后的温度是{:.2f}F".format(F))

else:

print("输入格式错误")

单元小结

Python程序语法元素分析

-缩进、注释、命名、变量、保留字

-数据类型、字符串类型、字符串、整数、浮点数、列表

-赋值语句、分支语句、函数

-input()、print()、eval()、print()格式化

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值