IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> Python知识库 -> python入门(四)数据类型(中) -> 正文阅读

[Python知识库]python入门(四)数据类型(中)

&关于python入门(一)遗留问题:python的应用领域

  • 科学计算 : 因为方便的大数表示及运算,所以适用于科学计算和高质量绘图
  • 文本处理 :python支持的正则表达式,还有其具有的SGML、XML分析模块使其适用于文本处理
  • 数据库编程 : python可以实现便捷的数据库通信并具有完整的SQL环境
  • 网络编程 :能方便地开发分布式应用程序
  • 金融分析 : python又数据分析模块,是金融分析,量化交易领域使用最多的语言
  • 多媒体应用:进行二维、三维图像处理
    此外还有 web开发、自动化运维、网络爬虫、游戏开发、人工智能等

&数据类型

&一、字符串格式化输出

这里续前一篇的字符串内容,忘记了字符串的建议看看上一篇。
如何在输出字符串的同时插入变量数据呢?比如我们从用户那里读取了一个名字xx和年龄xx,然后想输出“hello,xx,你现在xx岁”。

age = 18
name = 'yan er you'

# 一种方式
print('hello ' + name + ' ,you are' , age , 'years old')
#这里的age前后是逗号,而不是加号,因为python不支持整型+字符串。字符串+字符串的结果是两个字符串的拼接。

# 另一种方式
print('hello {0} ,you are {1} years old'.format(name , age))
#这里前面的{0}、{1}对应format的列表的第零个和第一个参数。函数参数排序从0开始。

#或者
print('hello {n} ,you are {a} years old'.format(a=age , n=name))
#这里顺序就可以反了,这是由于关键字传参,后面讲函数会解释

#三种输出的结果都是hello yan er you ,you are 18 years old

知道了如何输出,那么如何进行格式化输出呢?这就要用到控制符。

控制符含义
s字符串
d十进制整数
f,F十进制小数
g,G整数或小数,编译器自动选择合适的类型
e,E科学计数法,e小写,E大写
o八进制整数
x,X十六进制整数,x小写,X大写

一些具体的例子便于理解

number = 15
string = 'this is a string'
float1 = 2.0
float2 = 1.212126
print('{0:s}'.format(string)) #格式化输出字符串
# print('{0:s}'.format(number))会报错,因为number是整型
print('{0:d}'.format(number))
print('{0:5d}'.format(number)) #输出number,并且长度为5右对齐
print('{0:f}'.format(float2))
print('{0:20f}'.format(float2)) #输出float2长度为20右对齐
print('{0:20.5f}'.format(float2)) # 输出float2长度为20右对齐,并保留5位小数,会被舍入
print('{0:g}'.format(float1)) # float1 = 2.0更适用于整数表示,所以会输出2
print('{0:e}'.format(float2))
print('{0:E}'.format(float2)) #e,E会影响科学计数法中e的大小写
print('{0:o}'.format(number))
print('{0:x}'.format(number))
print('{0:X}'.format(number)) #与e同理,x、X会影响十六进制中字母的大小写

输出结果
??在这里插入图片描述

&二、复杂的数据类型

&序列定义及通用操作

序列不是一种数据结构,而是一类数据结构的统称。序列指的是可迭代的,有序的,可重复的数据结构。这里就包括一些复杂的结构。常见的具体有

  • 字符串(已经学过)
  • 列表(未学过)
  • 元组(未学过)
  • 范围(未学过)
    在介绍通用序列操作的时候,先把所有复杂的结构都想象成类似于数组(注意:python是没有数组这个类型的!!!),具体的区别后面会讲。

&一、索引

所有序列都可以通过索引访问元素。

str = 'python'
print(str[2])
#字符串索引,输出t

list = ('p','y','t','h','o','n')
print(list[2])
# 列表索引,输出t

tuple = ('p','y','t','h','o','n')
print(tuple[2]) # 元组索引,输出t
print(tuple[-1])  # 元组索引,输出n。python支持负数索引,-1就是从右向左的第一个

a = range(10)
print(a[2])
#范围索引,输出2.范围一般不这样用,具体用法后面讲

#注意索引的值如果超出范围会报错。比如我们print(list[100]),list只有6个元素,会报错。

&二、切片

切片指取出所有元素的某一部分。假设我们有一个字符串str,切片的基础方法为substr = str[a , b , c]。a为起始位置,b为结束位置,c为步长。基于这一基础,会有各种奇怪的变化。

#基础切片操作
str = '123456789'
print(str[2:8:3])
#第一个参数是起始位置2,第二个是结束位置9,步长为3,整个区间取左闭右开。输出为36
# 变种
print(str[2:5]) # 这里只有两个参数,省略了第三个,步长会默认为1
print(str[5:2]) #起始位置小于结束位置也不报错,但输出为空
print(str[:5]) # 这样会默认起始位置是0,步长为1,结束位置为5
print(str[:3]) # 起始0,结束3,步长1
print(str[:]) #这会获得整个字符串,可用于复制一个字符串
print(str[2::3]) #从2到末尾,步长为3的取字符
print(str[-20:4])
 #三个参数都支持正数和负数。第一、二个参数支持0,第三个步长不支持
 #起始位置、结束位置为复数,比如-5,就是从左到右的第五个
 #步长为负数,默认为从右到左
print(str[2:-5])
# 并且步长为正数时,起始位置应小于结束位置
# 步长为负数时,起始位置应大于结束位置
print(str[10:2:-1]) 
print(str[2:10:-1]) #输出为空

输出结果在这里插入图片描述
注意 :

  • 起始位置小于结束位置也不报错,但输出为空
  • 步长不支持负数
  • 步长为正数时,起始位置应小于结束位位置。步长为负数时,起始位置应大于结束位置。(具体例子看上面的最后两个)

&三、相加

同一类型的序列可以相加得到一个新的序列。要求是同一类型,不同类型是不可以的。

a = [1,2,3] #列表
b = [4,5,6]
ab = a+b
print(ab) #[1, 2, 3, 4, 5, 6]
c = (1,2,3) #元组
d = (4,5,6)
cd = c+d
print(cd) # (1, 2, 3, 4, 5, 6)
e = '123' # 字符串
f = '456'
ef = e+f
print(ef) # 123456
#  a+c,c+d, d+f都会报错

&四、乘法

序列的乘法相当于重复。

  a = [1,2,3]

b = 0*a
print(b) #输出为空

c = 3*a
print(c) #输出[1, 2, 3, 1, 2, 3, 1, 2, 3]

# d = 2.2*a 不可以用小数乘,会报错

&五、成员资格

所谓成员资格,就是一个元素在不在序列中。用 in 和 not in判断

a = [1,2,3]
print(1 in a) #True
print(4 in a) #False
print(1 not in a) #False
print(4 not in a) #True

#语句 '5' in a 会报错,因为a存放整数,但'a'是串。也就是in和not in两边类型要一致

b = 'hello'
print('he' in b) #True
print('p' in b) #False
print('ll' not in b) #False
print('pp' not in b) #True

&六、内置函数

主要是len() max() min() sum()

  • len():返回元素个数/字符串长度
  • max():返回最大值
  • min():返回最小值
  • sum():返回和,仅当元素都为数字的时候
a = [1.1 , 2.2 , 3.3]
print(len(a)) #3
print(sum(a)) #6.6
print(max(a)) #3.3
print(min(a)) #1.1

str = '123456'
print(len(str)) #6
#print(sum(str)) 字符不能求和,报错
print(max(str)) #字符6
print(min(str)) #字符1

&预告

详细的列表,元组,字典,集合知识。
欢迎批评指正

  Python知识库 最新文章
Python中String模块
【Python】 14-CVS文件操作
python的panda库读写文件
使用Nordic的nrf52840实现蓝牙DFU过程
【Python学习记录】numpy数组用法整理
Python学习笔记
python字符串和列表
python如何从txt文件中解析出有效的数据
Python编程从入门到实践自学/3.1-3.2
python变量
上一篇文章      下一篇文章      查看所有文章
加:2021-07-13 17:25:22  更:2021-07-13 17:25:53 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年5日历 -2024/5/5 2:13:06-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码