程序设计语言

程序设计语言是用于书写计算机程序的语言。是计算机能够理解和识别用户操作意图的一种交互体系,按照特定规则组织计算机指令,使计算机能够自动进行各种运算处理。

按照程序设计语言规则组织起来的一组计算机指令称为计算机程序

高级编程语言更具执行机制不同分为两类:静态语言和脚本语言

静态语言采用编译方式执行,如:C语言、Java语言;

脚本语言采用解释方式执行,如:JavaScript语言和PHP语言;

编译与解释

编译是将源代码转换成目标代码的过程。通常,源代码是高级语言代码,目标代码是机器语言代码,执行编译的计算机程序称为编译器( compiler)。

解释是将源代码逐条转换成目标代码同时逐条运行目标代码的过程。执行解释的计算机程序称为解释器( Interpreter)。

编译和解释的区别在于编译是一次性地翻译,一旦程序被编译,不再需要编译程序或者源代码。解释则在每次程序运行时都需要解释器和源代码。

程序设计的发展历程

  • 第一代机器语言
  • 第二代汇编语言
  • 第三代高级语言

程序设计的未来趋势

云计算、人工智能、大数据、AR/VR

程序的IPO结构

输入(Input)是一个程序的开始。程序要处理的数据有多种来源,形成了多种输入方式,包括文件输入、网络输入、控制台输入、交互界面输入、随机数据输入、内部参数输入等。

处理(process)是程序对输入数据进行计算产生输出结果的过程。计算问题的处理方法统称为“算法”,它是程序最重要的组成部分。可以说,算法是一个程序的灵魂。

输出(output)是程序展示运算结果的方式。程序的输出方式包括控制台输出、图形输出、文件输出、网络输出、操作系统内部变量输出等。

Python语言概述

Python语言由 Guido van Rossum 设计并领导开发,最早的可用版本诞生于1991年。回顾历史,1989年12月, Guido考虑启动一个开发项目打发圣诞节假期,决定为当时正在构思的脚本语言写一个解释器,因此诞生了 Python语言。 Python语言由大牛的“偶然”所思而诞生,但经过广大程序员30多年的发展和应用, Python语言已经成为当代计算机技术发展的重要标志之一

2000年,Python 2.0版本发布

2008年,Python 3.0版本发布

Python开发环境配置

安装Python开发和运行环境

网址:https://www.python.org/downloads

下载Python 3.0系列即可

记得框选最后一个 Add Python.exe to PATH自动配置环境变量

Python解释器有两个重要的工具:

IDLE( integrated development environment): Python集成开发环境,用来编写和调试 Python

pip: Python第三方库安装工具,用来在当前计算机上安装第三方库。

安装编程软件

Home | Geany

Hello World

打开IDLE Shell,输入Hello World

1
print("Hello World")

Python程序的运行方式

Python程序有两种运行方式:交互式和文件式

交互式利用 Python解释器即时响应用户输入的代码并输出结果。

文件式将 Python程序写在一个或多个文件中,启动 Python解释器批量执行文件中的代码。

交互式一般用于调试少量代码,文件式是最常用的编程方式。

IDLE 所显示的环境是交互式运行环境

注:输入 exit()quit() 后可以退出

交互式运行:

文件式运行:

我们可以在刚刚下载的 Geany 中编写代码

1
2
3
4
5
6
7
8
9
#input 用户输入
#eval 计算字符串中有效的表达式,并返回结果。
#将字符串转成相应的对象(如list、tuple、dict和string之间的转换)。
#将利用反引号转换的字符串再反转回对象。
num = eval(input("请输入一个整数:"))
if num > 100 or num < 0 :
print("整数大于100或小于0")
else:
print("整数在0到一百之间且包括0和100")

Python的特点

Python是一种面向对象的开源的解释型计算机编程语言,具有通用性、高效性、跨平台移植性和安全性

三个重要特点:语法简洁、生态丰富、多语言集成

其他特点:平台无关、强制可读、支持中文、模式多样、类库便捷

Python实例

1.斐波那契数列( Fibonacci sequence),又称黄金分割数列,由意大利数学家 Leonardo Fibonacci于1202年提出,并以其名字命名。该数列F(n)定义如下:F(0)=0,F(1)=1,…,F(n)=F(n2)+F(n-1),其中n≥2。简单说,斐波那契数列中每个数是前两个数之和。

根据斐波那契数列的定义,输出不大于1000的序列元素,以逗号分隔。

1
2
3
4
5
6
a,b = 0,1
while a < 1000:
# ~ end=是 print() 函数中的一个参数,
# ~ 会使该函数关闭自动换行的默认行为。
print(a,end=',')
a,b = b,a+b

2.根据圆的半径计算圆的面积

1
2
3
4
5
6
r = 25
area = 3.1415*r*r
# ~ fotmat作为Python的的格式字符串函数,
# ~ 主要通过字符串中的花括号{},来识别替换字段,从而完成字符串的格式化。
# ~ {:.2f} 保留两位小数
print("area={:.2f}".format(area))

3.绘制一个五角星

1
2
3
4
5
6
7
8
9
10
11
12
from turtle import *	#使用turtle库,用于绘图
color('red','red') #设置填充颜色
begin_fill() #准备开始填充图形,用于在绘制要填充的形状之前调用
#range(start, stop[, step])
#start: 计数从 start 开始。默认是从 0 开始。例如range(5)等价于range(0, 5);
#stop: 计数到 stop 结束,但不包括 stop。例如:range(0, 5) 是[0, 1, 2, 3, 4]没有5
#step:步长,默认为1。例如:range(0, 5) 等价于 range(0, 5, 1)
for i in range(5):
fd(200) #常用来控制画笔向当前行进方向前进一个距离
rt(144) #向右转,默认单位为度
end_fill() #填充完成
done() #暂停程序,停止画笔绘制,但绘图窗体不关闭

4.绘制七彩圆圈

1
2
3
4
5
6
7
8
9
10
import turtle #这种方法在之后每次引用turtle库里面的函数都需要在函数之前添加“库名.”
colors = ['red','orange','yellow','green','blue','indigo','purple']
for i in range(7):
a = colors[i]
turtle.color(a,a)
turtle.begin_fill()
turtle.rt(360/7)
turtle.circle(50) #画一个给定半径的圆
turtle.end_fill()
turtle.done()

5.对一个循环计数一千万次的程序记录并输出其运算时间

1
2
3
4
5
6
7
8
9
import time		#导入时间模块
limit = 10*1000*1000
start = time.perf_counter() #返回当前的计算机系统时间
while True:
limit = limit-1
if limit <= 0:
break
delta = time.perf_counter() - start
print("程序运行时间是:{}秒".format(delta))