《Python程序设计基础》程序设计入门
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
基本数据类型
sBaidu Nhomakorabear
字符串
‘Hello’ ‘3.142’
基本数据类型包括整数、浮点数和字符串。
tuple
元组·
3, 4 (3, 4)
(’eric’,18) 小括号
list
列表
dict
字典
[3,4,5]
[‘hello’,’world’]
{‘中国’: ‘北京’, ‘法国’:‘巴黎’, ‘日本’:‘东京’ }
• Python语言在计算生态的大背景下诞生、发展、再生,历时近30年,其简洁和面向生态的设 计理念得到了广泛认同,形成了全球范围最大的单一语言编程社区。
• 超过22万个第三方程序库覆盖从数据到智能、二维到三维、文本处理到虚拟现实、控制逻辑 到系统结构等几乎所有的计算领域。
• Python能将其他编程语言的优秀成果封装起来,降低使用复杂度,也称为“胶水语言” 。
Python引导程序员编写出统一、整齐并具有可读性的程序。这 也意味着程序员必须根据程序的逻辑结构,以垂直对齐的方式 来组织程序代码 。
如果代码没有对齐
# 求水仙花数
for i in range(100, 1000): a = i//100 b = i//10%10 c = i%10 if (i==a*a*a+b*b*b+c*c*c): print(i, end=' ')
Python中的浮点数类型与数学中实数的概念一致,表示带有小数的数值。在整数值上加一个点, 比如 3. 或者 3.0 ,会让Python将这个数解释为浮点数。
浮点数:“不确定尾数”
浮点数运算存在一个“不确定尾数”问题,即两个浮点数运算,有一定概率在运算结果后增加 一些“不确定的”尾数,例如:
print(0.35 + 0.20) print(0.27 + 0.20) print(0.28 + 0.32)
多个函数
from math import sqrt, fabs print(sqrt(9)) print(fabs(-2))
# 3.0 # 2.0
所有函数
from math import * print(sqrt(9)) print(fabs(-2))
# 3.0 # 2.0
IPO
输入->处理->输出
小结
① 以缩进方式标示代码块 ② 缩进是强制的 ③ Tab和空格不能混用 ④ 建议使用4个空格
六大核心数据类型
为什么需要区分数据类型?
加法操作符不支持整型和字符串类型变量的运算
六大核心数据类型
int float
整数
浮点数
3
1844674 4073709 551616
264
3.00 math.pi
输入函数 input
① 使用函数 input把输入保存为字符串; ② 使用字符串方法 split切分为列表,默认的切分符是空白; ③ 在列表生成式中使用 int 把字符串类型转换为整数; ④ 把整数列表拆包为3个变量。
输出函数 print
历史悠久、影响广泛的C语言对后来的很多程序设计语言的设计产生了深远的影响,经典的输出函数 printf 也被移 植到在PHP和 JAVA中·,在Python中也有类似的实现。Python 语言支持两种字符串格式化方法,这里先介绍类 似 C 语言中 printf 函数的格式化方法,支持该方法主要考虑与大批 C 语言程序员编程习惯相一致。
# 153 370 371 407
IndentationError: unexpected indent 缩进错误:意外缩进
缩进规则可能会给初学者带来不便。例如,初学者将网页上的Python代码复 制到米筐Notebook中,代码无法正确运行或者运行结果与预期的不一致,这 很有可能是代码中原有的空格消失或者制表符与空格符混用导致的。
程序评测系统中的Hello,World:A+B问题
任务说明 输入示例 输出示例
输入两个整数,计算这两个整数的和。 34 7
34 7
a, b = [int(s) for s in input().split()] c=a+b print(c)
输入函数 input
函数 input 从控制台获得用户的一行输人,无论用户输人什么内容,该函数都以字符串类型 (string)返回结果。该函数可以包含一些提示性文字,用来提示用户。
Scarpy
TuShare
语言 处理
NLTK
Web 开发
Django Flask
深度 学习
Keras TensorFlow PyTorch
安全 运维
搜索 一下
Python:生态系统
• 信息技术分支逐渐形成了一批以开源共享为形态的开放资源,包括开源操作系统、数据库、 软件工具甚至开源硬件,构成了“计算生态”。
可变对象和不可变对象
a
3
0x0028FF20
a
81
0x0028FF20
C语言:更新变量,地址不变
3
0x10b681840
1
a
2
81
0x10b682200
Python:创建新对象,更新引用
• 可变(Mutable)与不可变(Immutable)是对各种数据类型都有意义的重要性质。 • 可变类型的对象在创建后可以变化(包括结构或内容的变化),而不可变类型的对象创
[’eric’,18] 中括号
{ 3: 9, 4: 16, 5: 25 }
大括号
组合数据类型
组合数据类型包括元组、列表和字典,分别使用圆括号、 方括号和花括号表示,它们也被称为容器(Container)。
数字类型
Python支持的数字类型有3类:整数(int)、浮点数(float)和复数(complex )。
# 0.55 # 0.47000000000000003 # 0.6000000000000001
① 这是由于底层 CPU 和 IEEE 754 标准通过自己的浮点单位去执行算术时的特征。 ② 要比较两个浮点数是否相等,采用的办法是检查这两个浮点数的绝对值是否足够小。
小结
① 不同的数据类型对应不同的对象 ② Python是强类型语言 ③ 3个基本数据类型:整数、浮点数和字符串 ④ 3个组合数据类型:元祖、列表和字典 ⑤ 使用函数type查看变量的类型
程序的输入和输出
程序评测系统的 Hello World: A+B 问题
计算圆的周长和面积
#-*-coding: utf-8-* # 本程序的功能是根据圆的半径来计算圆的周长和面积。
import math
radius = float(input("输入圆的半径:"))
circumference = 2 * math.pi * radius area = math.pi * radius * radius
Python3 程序设计-程序设计入门
基本语法和数据类型
动手学 Python,实践出真知!
函数和库的导入
方式 导入库 导入库并起别名 从库中导入一个函数 从库中导入多个函数 从库中导入所有函数
示例
import math import numpy as np from math import sqrt from math import sqrt, fabs from math import *
import math print("PI = %.3f" %(math.pi)) # PI = 3.142 print("%s is %d yeard old." %('Eric', 21)) # Eric is 21 yeard old.
为了让本书的读者更好的掌握程序设计语言,我们搭建了C/C++/JAVA/Python程序自动评测系 统,网址为http://oj.csoeasy.com/。
系统提供了大量适合初学者的练习,循序渐进,按照各个单元分类,约100题,称为“百题大 战”,放置在“竞赛&作业”栏目下。每年还会调整题目以更适合初学者的实际需求。
# 计算圆的周长 # 计算圆的面积
print("圆的周长是 %.2f ,圆的面积是 %.2f。" %(circumference, area))
程序在线评测系统及基本使用
程序设计在线评测系统的英文名为Online Judge,简称OJ,是基于Web的服务器端判题系统。 用户注册后,可以根据题目在线提交多种程序(C、C++、JAVA、Pascal、Python等)源代码,系 统对源代码进行编译和执行,采用黑盒测试,通过预先设置的测试数据来检验源代码的正确性。
结构化程序的框架
IPO
从数据源(键盘、文件、 网络、函数等来源)获取 需要处理的数据 程序的核心: 处理数据
输出/保存结果
Input -> Process -> Output
输入 处理 输出
• 输入是程序的开始。程序有多种数据源,从而形成了多种 输入方式,包括文件输入、网络输入、控制台输入、交互 界面输入、随机数据输入、内部参数输入等。
Python:生态系统
Python 官方网站提供了第三方库索引功能(the Python Package Index),称为PyPI, 网址为:https://pypi.org/ ,页面如下图所示。该页面列出了 Python 语言 29万多个 第三方库的基本信息,这些函数库覆盖信息领域技术所有技术方向。
使用和麻烦
强制代码缩进
代码缩进示例
# 求水仙花数
for i in range(100, 1000): a = i//100 b = i//10%10 c = i%10 if (i==a*a*a+b*b*b+c*c*c): print(i, end=' ')
# 153 370 371 407
Python 以缩进方式来标识代码块,不再需要使用花括号
建后不会改变(不能修改)。
Python的常用算术运算示例
表达式 9+4 9 -4 9*4 9/4 9 // 4 9%4 2**10 36**0.5 7+9**0.5 (7+9)**0.5
运算结果 13 5 36 2.25 2 1
1024 6
10.0 4.0
说明 加法 减法 乘法 数学除法 取整除法 取余(模运算) 乘方,2的10次方 乘方运算的特例:平方根 乘方的优先级高 括号改变优先级
Python3 程序设计
Python的生态
动手学 Python,实践出真知!
手机生态:应用商店
需要手机!
更需要手机中的App!
Python的第3方库
矩阵 运算
NumPy
数据 分析
Pandas
数据
可视化
Matplotlib Seaborn Bokeh
机器 学习
sklearn
爬虫
金融 数据
BeautifulSoup
说明 库名很短 库名很长
不推荐,限于实验和探索
导入库
导入库
import math print(math.sqrt(3))
# 1.7320508075688772
导入库并起别名
import numpy as np na = np.array(range(0,5)) print(na.mean())
# array([0, 1, 2, 3, 4]) # 2.0 数组的平均值
• 处理是程序对输入进行计算并产生输出结果的过程。计算 问题的处理方法统称为算法,它是程序最重要的组成部分, 是程序的核心。
• 输出是程序展示运算结果的方式。程序的输出方式包括控 制台输出、图形输出、文件输出、网络输出、操作系统内 部变量输出等。
任务:计算圆的周长和面积
输入 处理 输出
#-*-coding: utf-8-* # 本程序的功能是根据圆的半径来计算圆的周长和面积。 import math
print(type(3))
# <class 'int'>
print(type(1.0)) # <class 'float'>
print(type(3+4j)) # <class 'complex'>
整数类型与数学中整数的概念一致,理论上的取值范围是 [-∞, +∞]。只要计算机内存能够存储, Python 程序可以使用任意大小的整数。一般认为整数类型没有取值范围限制。
radius = float(input("输入圆的半径:"))
circumference = 2 * math.pi * radius area = math.pi * radius * radius
# 计算圆的周长 # 计算圆的面积
print("圆的周长是%.2f,圆的面积是%.2f。" %(circumference, area))
别名是约定俗成的
import numpy as np import pandas as pd import matplotlib.pyplot as plt
导入函数
单个函数
from math import sqrt print(sqrt(3)) print(sqrt(9))
# 1.7320508075688772 # 3.0