目录

前言:

一、数值

数值介绍

1.整数

1)整数介绍

2)整数类型是 不可变 类型

 3)小整数池

2.浮点数

1)浮点数介绍

3.类型转换

1)其它转为整数

2)其它转为浮点数

4.常用数学函数

1)Python 内置 math 库

2)Python 内置方法

二、布尔

1.布尔类型

1)布尔类型介绍

2)bool函数

3)布尔类型的运算

2.空值

1)空值的介绍

三、字符串

1.字符串介绍与创建

1)字符串介绍

2)字符串创建

2.深入字符串

1)不可变序列

2)字符串下标(索引)

3)字符串切片

3.字符串格式化之挖坑填坑法则

1)挖坑填坑法则简介

 2)刨坑填坑法宝之 %s 与 %d

3)刨坑填坑法宝之 str.format()

4)刨坑填坑法宝之 f”“

4.类型转换

1)其它转为字符串

5.常用方法


前言:


Python中常用的数据类型:



数值、布尔、字符串、列表、元组、字典、集合




本篇文章只涉及(基本数据类型)前三种数据类型,(组合数据类型)其余的在之后的文章中再说明!

一、数值

数值介绍

在 Python 程序中,如果需要对数据进行计算,则主要使用数值。数值主要包括 整数 、浮点数 。

1.整数

1)整数介绍

        整数主要分为正整数(如:666)、 负整数(如:-666)以及零。在 Python 中,使用 int 表示整数类型。

>>>type(1)
<class 'int'>

2)整数类型是 不可变 类型

在 Python 中,整数类型是不可变类型, 整数对象是不可变对象。修改整数对象时, Python 将以 新数值创建一个新对象,变量名与新对象进行绑定; 旧对象如无其他引用,将被释放。

Python求正整数的阶乘 python 正整数_Python

 3)小整数池

在 Python 自己的运行环境中,会频繁使用 [-5,256] 这一范围内的整数,如果每需要一个,就创建 一个,那么无疑会增加很多开销,降低运行效率。 所以 Python 在初始化的时候会自动建立一个 小整数池缓冲区,里面包含 -5 到 256 的整数。也就 是说,当你要使用 -5 到 256 范围内的整数时,直接从小整数池中拿来用即可。

Python求正整数的阶乘 python 正整数_Python_02

2.浮点数

1)浮点数介绍

浮点数由 整数部分 与 小数部分 组成(如:3.1415)。在 Python 中,使用 float 表示浮点数类型。

>>>type(3.14)
<class 'float'>

3.类型转换

1)其它转为整数

Python 提供的 int(被转对象) 函数,还可以将 浮点数 转为 整数



>>>a=3.14
>>>int(a)
>>>type(a)
<class 'int'>

⚠️注意:无论浮点数的小数部分值是什么,使用int( )函数转化时,只会保留整数部分,而将小数部分舍去。因此在求浮点数的四舍五入之类的问题时,应该避免直接使用int函数。

2)其它转为浮点数

Python 提供的 float(被转对象) 函数,还可以将 整数 转为 浮点数

>>>a=3
>>>float(a)
>>>type(a)
<class 'float'>



⚠️注意:保留一位小数,即x.0

4.常用数学函数

1)Python 内置 math 库

对于简单的 加减乘除 可以通过 运算符 实现,如果要使用 Python 帮助你实现更复杂的计算, math 库必须了解。主要方法如下:

函数

功能描述

math.fabs(x)

返回x的绝对值

math.ceil(x)

返回x的上入整数

math.floor(x)

返回x的下舍整数

math.sqrt(x)

返回x的平方根

math.pow(x,y)

返回x的y次方

math.log(x,base)

返回以base为基数x的对数

math.log 10(x)

返回以10为基数x的对数

math.sin(x)

返回x弧度的正弦值

math.cos(x)

返回x弧度的余弦值

math.tan(x)

返回x弧度的正切值

math.pi

返回Π的值

2)Python 内置方法

函数

功能描述

max(x,y,z,...)

返回x,y,z,....中的最大值

min(x,y,z,...)

返回x,y,z,....中的最小值

abs(x)

返回x的绝对值

round(x)

返回x四舍六入五成偶的值

二、布尔

1.布尔类型

1)布尔类型介绍

在 Python 中,也有与 0、1 表现相似的数据类型——布尔类型(bool)。布尔类型是 int 类型 的延续,只有 True 与 False 两种取值:  True ->> 真  False ->> 假

注意:

注意:布尔类型首字母大写,其它小写,不能其它花式变型!

2)bool函数

bool()函数 Python 提供的 bool(表达式) 函数,可以用来测试一个表达式的布尔值结果。

注意:

1. 对于数字来说,值 为 0 则表示 False,值 不为 0 则表示 True

2. 对于字符串、列表、元组、字典、集合等对象,若 为空 则表示 False,不为空 则表示 True

3)布尔类型的运算

True,False 分别对应计算机的0、1.

print(bool(True)+1)  # 2
print(bool(False)+1) # 1

2.空值

1)空值的介绍

None 表示为 空值,其类型为 NoneType

>>>type(None)
<class 'NoneType'>

注意:

1. NoneType 只有 None 一个值

2. None 与其它值比较永远返回 False

3. None 的布尔值永远为 False

三、字符串

1.字符串介绍与创建

1)字符串介绍

在计算机中无时无刻都在使用文本,如 word 文档中的内容。而在 Python 中,则使用字符串 类型来表示文本内容。

2)字符串创建

字符串使用单引号或双引号来创建字符串,使用三引号创建多行字符串。

注意:

1. 引号必须都是英文状态下的

2. 单引号或双引号都需成对输出,不能一单一双

注意1:字符串做加法是拼接

print('我是'+'中国人') # 我是中国人

2.深入字符串

1)不可变序列

字符串是 不可变

解析: A. 对于数值类型而言,当 0 < num < 2**30 时,都只占有 28 个字节(了解即可)。 B. 对于字符串类型来说,一个空的字符串占有 49 个字节,"2" "0" "0" 分别占用一个字节,最终 "200" 所用 52 个字节。

Python求正整数的阶乘 python 正整数_字符串_03

2)字符串下标(索引)

由于字符串是序列数据结构,我们可以使用下标(索引)从字符串中取出某一个字母。

语法:字符串[某字母的下标]

注意1:

下标(索引)默认从 0 开

 注意:

1. s[下标],若下标超出 s 的长度则报错

2. 字符串是不可变数据类型,所以 s[下标] = ‘新值’则报错

3)字符串切片

如果你需要从字符串中取出一部分子字符串,可以使用切片实现。

切片语法:字符串[起始下标:结束下标]

注意:

1. 起始下标默认从 0 开始

2. 结束下标只能取到结束下标 前一位 的值(理解:左闭右开)

3.s[起始值:] ->> 不写结束下标则默认选择到最后一位

4. s[:] ->> 起始下标与结束下标都不写,则默认从头取到尾

切片语法:字符串[起始下标:结束下标:步长]

注意:

1. 步长默认为 1

2. 步长不能为浮点数

倒叙:
步长取负值

3.字符串格式化之挖坑填坑法则

1)挖坑填坑法则简介

刨坑填坑法则 : 1. 在字符串 需要使用变量 的地方 刨一个坑
                            2. 再使用对应的 变量名把坑填上

Python求正整数的阶乘 python 正整数_字符串_04

 2)刨坑填坑法宝之 %s 与 %d

语法:"%s %s"%(变量名1,变量名2)

Python求正整数的阶乘 python 正整数_Python_05

 缺陷:%s %d %f 需要考虑填入变量的类型。

3)刨坑填坑法宝之 str.format()

语法:"{} {}".format(变量1,变量2)

注意:

1. 其中 {} 为占坑符

2. 默认情况是依次填

4)刨坑填坑法宝之 f”“

语法:f"{变量1} {变量2}"

注意:

1. 其中 {} 为占坑符

一般都用f'{}'

4.类型转换

1)其它转为字符串

Python 提供的 str(被转对象) 函数,可以将 其它类型 转为 字符串。

>>>a = 1000
>>>str(a)
>>>type(a)
<class 'str'>

5.常用方法

Python 字符串自带了非常多的方法,帮助你花式操作字符串。主要方法如下:

方法

功能描述

S.find(元素)

查找元素所在的最小索引,未找到则返回-1

S.index(元素)

查找元素所在的最小索引,未找到则报错

S.replace(旧值,新值)

以新值替换旧值

S.split()

使用空格字符串分隔为多个词,并返回列表

S.startswith(前缀)

判断字符串是否以前缀开始,返回为bool值

S.lower()

将字符串全部转为小写

S.upper()

将字符串全部转为大写

S.strip()

默认去掉字符串左右的空格

S.join(可迭代对象)

将序列中的元素以指定的字符连接生成一个新的字符串

S.isalpha()

检测字符串是否只由字母组成,返回的是bool值

S.isdigit()

检测字符串是否只由数字组成,返回的是bool值

S.isspace()

检测字符串是否只由空格组成,返回的是bool值

1.S.find(元素)  索引从0开始

str = '1222223'
print(str.find('2'))

Python求正整数的阶乘 python 正整数_Python求正整数的阶乘_06

str = '1222223'
print(str.find('4'))

Python求正整数的阶乘 python 正整数_python_07

 2.S.index(元素)

str = '1222223'
print(str.index('1'))

Python求正整数的阶乘 python 正整数_Python_08

str = '1222223'
print(str.index('4'))

 

Python求正整数的阶乘 python 正整数_pycharm_09

3.S.replace(old,new,[count])

S 是要执行替换的字符串或字符串变量,各参数的含义如下:

old : str 中要被替换的旧字符串;

new : 用于替换 str 中的新字符串;

count : 可选参数,指定 count 后,只有 str 中前 count 个旧字符串old被替换。

S = 'first day day is 人'
print(S.replace('day','dy',1))

Python求正整数的阶乘 python 正整数_字符串_10

4.S.split()

1)、split函数简介

Python中split()函数,具体作用如下:

  • 拆分字符串。通过指定分隔符对字符串进行切片,并返回分割后的字符串列表(list);

2)、语法

str.split(str="",num=string.count(str))[n]

        str:表示为分隔符,默认为空格,但是不能为空(’’)。若字符串中没有分隔符,则把整个字符串作为列表的一个元素
        num:表示分割次数。如果存在参数num,则仅分隔成 num+1 个子字符串,并且每一个子字符串可以赋给新的变量。默认为 -1, 即分隔所有。
        [n]:表示选取第n个分片

3)、分离字符串

str = 'www.baidu.com.cn'

1、以’ . '为分隔符

str = 'www.baidu.com.cn'
print(str.split('.'))

输出:

['www', 'baidu', 'com', 'cn']

2、分隔两次

wtr = 'www.baidu.com.cn'
print(str.split('.',2))

输出:

['www', 'gziscas', 'com.cn']

3、分割不限制,并取序列为2的项

str = 'www.baidu.com.cn'
print(str.split('.',-1)[1])

输出:

baidu

4、分割两次,并把分割后的3个部分保存到3个文件

u1, u2, u3 = str.split('.',2)

print(u1)   #输出:www
print(u2)   #输出:baidu
print(u3)   #输出:com.cn

5、实例

str = "hello boy<[www.baidu.com]>byebye"

print(str.split("[")[1].split("]")[0])

2.S.startswith(前缀)

# 判断字符串是否以xx开头 startswith
v1 = input('请输入住址:')
print(v1.startswith('江苏省'))

Python求正整数的阶乘 python 正整数_python_11