第三章:基本数据类型

类型的概念


类型是编程语言对数据的一种划分

大致分为以下几种:

        数字类型        字符串类型

        元组类型        列表类型

        文件类型        字典类型


a、数字类型


Python语言包括三种数字类型:

        整数类型

        浮点数类型

        复数类型

整数类型

数学中的整数概念一致,没有取值范围限制。

第三章:基本数据类型_第1张图片
pow()

pow(x,y)函数(计算x的y次方)

第三章:基本数据类型_第2张图片
进制数

0x,0X开头表示16进制数

0b,0B开头表示2进制数

0o,0O开头表示8进制数

浮点数类型

带有小数点及小数的数字

Python语言中浮点数的数值范围存在限制,小数精度也存在限制。

取值范围是10的-307次方到10的308次方

只能提供15个数字的准确性

科学计数法中系数的最大精度为53

科学计数法

复数类型

与数学中的复数概念一致,

        z = a +bj

a是实数部分

b是虚数部分,虚数部分用 j 或者 J 标识

a和b都是浮点类型

第三章:基本数据类型_第3张图片
复数

z.real获得实数部分,z.imag获得虚数部分。


b、数字类型的操作


三种类型存在一种逐渐“扩展”的关系:

整数 > 浮点数 > 复数  

(整数是浮点数特例,浮点数是复数特例)

不同数字类型之间可以进行混合运算,运算后生成果为最宽类型

第三章:基本数据类型_第4张图片
举例

增强赋值操作符

第三章:基本数据类型_第5张图片
增强赋值操作符

内置的数值运算函数

第三章:基本数据类型_第6张图片
内置的数值运算函数

数字类型的转换

第三章:基本数据类型_第7张图片
数字类型的转换

三种类型可以相互转换

第三章:基本数据类型_第8张图片
相互转换


c、math库的使用


nmath库是Python提供的内置数学类函数库

nmath库不支持复数类型

math库一共提供了

4个数学常数

44个函数,分为4类,包括:

16个数值表示函数

8个幂对数函数

16个三角对数函数

4个高等特殊函数

math库概述

首先使用保留字import引用该库

第一种:import math

对math库中函数采用math.()形式使用

第三章:基本数据类型_第9张图片
import math

第二种:from math import <函数名>

对math库中函数可以直接采用<函数名>()形式使用

第三章:基本数据类型_第10张图片
from math import <函数名>  

4个数学常数

第三章:基本数据类型_第11张图片
4个数学常数

16个数值表示函数

第三章:基本数据类型_第12张图片
16个数值表示函数    

8个幂对数函数

第三章:基本数据类型_第13张图片
8个幂对数函数

六个三角双曲函数

第三章:基本数据类型_第14张图片
六个三角双曲函数

4个高等特殊函数

第三章:基本数据类型_第15张图片
4个高等特殊函数

实例: 天天向上的力量

问题:一年365天,以第1天的能力值为基数,记为1.0,当好好学习时能力值相比前一天提高1‰,当没有学习时由于遗忘等原因能力值相比前一天下降1‰。每天努力和每天放任,一年下来的能力值相差多少呢?

天天向上:(1+ 1‰)的365次方

天天向下:(1- 1‰)的365次方

第三章:基本数据类型_第16张图片
运行结果


d、字符串类型及其操作


字符串是用双引号“”或者单引号‘’括起来的一个或多个字符,表示单行字符串。

字符串也可以用三引号''',表示单行或者多行字符串。

第三章:基本数据类型_第17张图片
例子

字符串的操作

想输出带有引号的字符串就使用Python语言转义符: \

使用\\ 输出带有反斜杠的字符串

第三章:基本数据类型_第18张图片
转义符

用转义符可以在字符串中表达一些不可直接打印的信息。

例如:用\n表示换行

第三章:基本数据类型_第19张图片
\n表示换行

字符串类型

字符串是一个字符序列:字符串最左端位置标记为0,依次增加。字符串中的编号叫做“索引”

第三章:基本数据类型_第20张图片
索引

Python字符串的两种序号体系

正向递增序号:0~~L-1(长度为L的字符串)

反向递减序号:-1~~-L

第三章:基本数据类型_第21张图片
两种序号体系

单个索引辅助访问字符串中的特定位置

格式为[<索引>]

可以通过两个索引值确定一个位置范围,返回这个范围的子串

格式:[:]

start和end都是整数型数值,子序列从索引start开始直到end结束,但不包括end位置。

字符串之间可以通过 + 或 * 进行连接

加法操作(+)将两个字符串连接成为一个新的字符串

乘法操作(*)生成一个由其本身字符串重复连接而成的字符串

第三章:基本数据类型_第22张图片
详细例子

x in s

如果x是s的子串,返回Ture;否则,返回False

len()函数返回一个字符串的长度

在python中,英文字符和中文字符都是一个字符(因为使用Unicode编码存储)。

例子

大多数数据类型都可以通过str()函数转换为字符串

第三章:基本数据类型_第23张图片
str()

实例:输入一个月份数字,返回对应月份名称缩写。    

这个问题的IPO模式是:

      输入:输入一个表示月份的数字(1-12)

      处理:利用字符串基本操作实现该功能

      输出:输入数字对应月份名称的缩写

将所有月份名称缩写存储在字符串中

在字符串中截取适当的子串来查找特定月份

第三章:基本数据类型_第24张图片
查找特定月份

可以通过 for 和 in 组成的循环来遍历字符串中每个字符

第三章:基本数据类型_第25张图片
遍历字符串

内置的字符串处理函数

第三章:基本数据类型_第26张图片
列表1
第三章:基本数据类型_第27张图片
列表2
第三章:基本数据类型_第28张图片
列表3


e、字符串类型的格式化  format()方法


format()方法的基本使用

字符串格式化:用于解决字符串和变量同时输出时的格式安排。

字符串format()方法的基本使用格式是:

         <模板字符串>.format(<逗号分隔的参数>)

format()

format()方法的格式控制

第三章:基本数据类型_第29张图片
格式控制

format()方法中模板字符串的槽{}除了包括参数序号,还可包括格式控制信息:

{<参数序号>:<格式控制标记>}

其中,格式控制标记用来控制参数显示时的格式。包括:<填充><对齐><宽度>,<.精度><类型>6个字段,都是可选的,可以组合使用。

第三章:基本数据类型_第30张图片
格式控制标记

宽度:输出字符的宽度。

若format()参数的实际长度 > 宽度,则按实际输出

若format()参数的实际长度 < 宽度,则位数默认以空格补充

对齐:<,>,^ 分别表示宽度内左、右、居中对齐

填充:宽度内除参数外以什么字符填充,默认用空格

第三章:基本数据类型_第31张图片
<填充><对齐><宽度>

逗号:(,)数字类型的千位分隔符

精度:由小数点(.)开头。

对于浮点数:精度表示小数部分输出的有效位数

对于字符串:精度表示输出的最大长度

第三章:基本数据类型_第32张图片
<精度>

类型:表示输出整数和浮点数类型的格式规则。

对于整数:

b:输出整数的二进制方式

d:输出整数的十进制方式

o:输出整数的八进制方式

x / X:输出整数的小/大写十六进制方式

c:输出整数对应的Unicode字符

对于浮点数:

e / E:输出浮点数对应的小/大写字母e的指数形式

f:输出浮点数的标准浮点形式

%:输出浮点数的百分形式

浮点数输出时尽量使用<.精度>表示小数部分的宽度

第三章:基本数据类型_第33张图片
<类型>


f、文本进度条


利用print()函数实现简单的非刷新文本进度条。

基本思想是按照任务执行百分比将整个任务划分为100个单位,每执行N%输出一次进度条。每一行输出包含进度百分比,代表已完成的部分(**)和未完成的部分(..)的两种字符,以及一个跟随完成度前进的小箭头,风格如下:

多行刷新

第三章:基本数据类型_第34张图片
多行刷新

单行动态刷新

第三章:基本数据类型_第35张图片
单行刷新


第三章:基本数据类型_第36张图片
单行刷新

五花八门的进度条设计函数 

第三章:基本数据类型_第37张图片

你可能感兴趣的:(第三章:基本数据类型)