二、机器学习基础知识:Python数据处理基础

文章目录

  • 1、基本数据类型
    • 1.1 数字类型(Number)
    • 1.2 字符串类型(String)
    • 1.3 列表类型(List)
    • 1.4 元组类型(Tuple)
    • 1.5 字典类型(Dictionary)
    • 1.6 集合类型(Set)
  • 2、数据文件读写
    • 2.1 打开与关闭文件
    • 2.2 读取文件内容
    • 2.3 将数据写入文件

1、基本数据类型

在Python3的环境中,提供了6种基本的内置数据类型,包括数字类型(Number)、字符串类型(String)、列表类型(List)、元组类型(Tuple)、字典类型(Dictionary)以及集合类型(Set)。根据数据对象是否可变,又将它们划分为可变数据类型和不可变数据类型。
可变数据类型包括列表、字典和集合,它们在声明时会开辟一块内存空间,使用Python的内置方法对内存中的数据进行修改时,内存地址不发生变化。
不可变数据类型包括数字、字符串和元组,它们在声明时也会开辟一块内存空间,但不能改变这块内存内的数据,如果改变了变量的赋值,就会重新开辟一块内存空间。

1.1 数字类型(Number)

Python的数字类型包括int、float、bool和complex复数类型。当指定一个值时,就创建了一个数字类型的对象。
二、机器学习基础知识:Python数据处理基础_第1张图片

在上图实例中,使用id函数可以看到在变量a加1之后,内存地址已经发生了改变,说明a=a+1不是原有的int对象加1,而是重新创建了一个int对象,大小为a+1。
详细参考:Python程序设计基础:数值

1.2 字符串类型(String)

Python中的字符串用半角的单引号或双引号括起来,对于字符串内的特殊字符,使用反斜杠‘\’进行转义,若要获取字符串中的一部分,可以采用切片的方式,截取格式如下:

字符串变量[头下标:尾下标]

字符串的起始下标为0,正序或逆序读取均可。
字符串的赋值与访问:
二、机器学习基础知识:Python数据处理基础_第2张图片

详细参考:Python程序设计基础:字符串

1.3 列表类型(List)

列表使用方括号[]进行定义,数据项之间使用逗号分隔,数据项可以是数字、字符串或列表。
列表也是一种Python序列,其截取语法与字符串类似,格式如下:

列表变量[头下标:尾下标]

同样,列表的起始下标为0,正序或逆序读取均可。
列表的访问、修改与遍历:
二、机器学习基础知识:Python数据处理基础_第3张图片

详细参考:Python程序设计基础:列表与元组(一)

1.4 元组类型(Tuple)

元组写在小括号()中,元素之间使用逗号进行分割,元素可以具有不同的类型,它与列表相似,但是元组的元素不可修改。
元组的截取语法和字符串、列表类似,起始下标为0,正序或逆序读取均可。
元组的访问:
二、机器学习基础知识:Python数据处理基础_第4张图片

详细参考:Python程序设计基础:列表与元组(二)

1.5 字典类型(Dictionary)

字典是一种可变容器模型,可存储任意类型对象,使用大括号{}定义,格式如下:

字典名={:}

字典的键和值使用冒号分隔,每个键值对之间使用逗号分隔。键一般是唯一的,如果出现了重复,则后面的键值对会替换前面的键值对。值的数据及类型不限,可以是字符串、数字或元组。
字典的访问及修改:
二、机器学习基础知识:Python数据处理基础_第5张图片

详细参考:Python程序设计基础:字典与集合(一)

1.6 集合类型(Set)

集合是一列无序的、不重复的数据项组成,Python中的集合是可变类型。与数学中的集合概念相同,集合中每个元素都是唯一的。同时,集合不设置顺序,每次输出时元素的排序可能都不相同。
集合使用大括号表示,形式上和字典相同,但数据项不是成对的。
由于集合和字典一样都是使用大括号表示,因为在创建空集合时,必须使用set()函数进行创建。
集合的主要操作:
二、机器学习基础知识:Python数据处理基础_第6张图片

详细参考:Python程序设计基础:字典与集合(二)

2、数据文件读写

机器学习的本质是对数据进行处理,如果数据是少量的、临时的,可以使用上述数据类型变量进行存储,如果数据是大量的,则需要使用到数据文件。

2.1 打开与关闭文件

Python中打开文件的内置函数是open()函数,打开文件后会创建一个文件对象,对文件的访问都是通过这个文件对象进行,语法格式如下:

open(file_name[,access_mode][,buffering])

其中file_name为字符串类型,是要访问的文件名称;access_mode是文件的打开模式,如读取、写入或追加等,默认为r(只读模式),写数据通常使用的是w和a,表示改写和添加;buffering表示文件缓冲区的策略,当该值为0时,表示不使用缓冲区。
打开文件之后可以向文件中写入相关内容,使用write()方法,参数为要写入的字符串。
在文件操作结束后,需要关闭文件对象,释放缓存,需要使用文件对象的close()方法。
文件的打开、写入与关闭:

filename = '1.txt'
f=open(filename,'a') #打开1.txt文件并进行写操作
f.write("machine learning")
f.close

使用with语句可以调用f.close()方法就能自动关闭文件。

filename = '1.txt'
with open('1.txt','a') as f:
    f.write("machine learning")

2.2 读取文件内容

常见的读取文件方法主要有三种,包括read()、readline()、readlines()。
read():默认读取整个文件,若设置了参数字节数,则读取对应字节数,返回值为字符串。
readline():从当前位置开始,读取文件中的一行,返回值为字符串。
readlines():从当前位置开始,读取文件的所有行,返回值为列表,每行为列表的一项。
使用read()读取整个文件:
二、机器学习基础知识:Python数据处理基础_第7张图片

使用readline()逐行读取文件:
二、机器学习基础知识:Python数据处理基础_第8张图片

使用readlines()一次读取多行:
二、机器学习基础知识:Python数据处理基础_第9张图片

2.3 将数据写入文件

如果要将数据写入文件,打开方式需要选择w(写入)或者a(追加)模式,写入文件可以使用Python提供的write方法,其语法格式如下:

fileobject.write(byte)

其中byte为待写入文件的字符串或字节。
文件的写入与追加:

with open('1.txt','w') as f:
    f.write("machine learning.\n") #写入相关内容,清空原文件
filename = '1.txt'
with open('1.txt','a') as f:
    f.write("python learning.\n") #追加写入相关内容,不覆盖原数据

详细参考:Python程序设计基础:文件操作

你可能感兴趣的:(机器学习(Python),机器学习,人工智能,python,数据分析,数据挖掘)