前言
这篇文章是面对新手的python教程,很多地方我都讲的很细。认真看,仔细看,相信你会有所收获。
首先 使用 PyCharm 创建一个 pythonProject 项目。
具体教程参考我主页的 从头到脚教你使用python进行开发 这篇文章,介绍的很详细。

假设你的pythonProject已经创建完成,如图所示。

下面让我们在 pythonProject的项目上右键点击New -> File

在弹出的New File 的编辑框中 输入 将进酒.txt
回车

然后,我们打开左侧的main.py
把原来的print代码给它删掉,我们换别的代码。
输入
'将进酒.txt''utf-8'
for in
如图所示:

然后,我们点击左侧边栏的 三角标志按钮

运行,并看到上面打出来文本将进酒所有的诗句。
接下来我们一步一步的介绍每一句的意思。
首先 是 open(‘将进酒.txt’,encoding=’utf-8’)
这个open 函数是一个操作文本的函数,它不光可以读取文本,还可以写入文本。
第一个参数 也就是 ‘将进酒.txt’ , 号之前的 ,这个参数要求你放入的是 文本文件名。
就是我们刚刚创建的那个文件名。
第二个参数,是我们读取文件的过程中,使用哪种编码。
这里我们选择的编码是UTF-8,你只要知道这个编码是现在最通用的文字编码就行了。
要对这个编码有一个清晰的认识我们可以这样做
你在那个将进酒.txt 去点右键

选择 open in -> Explore

打开那个将进酒.txt 所在的目录之后,你双击用系统自带的 记事本打开。
看到那个 文件(F)没有?
就点那个,然后点 另存为

还在这个文件夹中,

你点那个编码(E)旁边的Combox(显示UTF-8的那个ui组件)

选择第一个 ANSI
选择下去
再点保存

你点是。
我们再回到那个PyCharm IDE 中,你试着点下那个 三角Run main 看看结果
它是不是出错了?
怎么提示的?
'utf-8'编解码器无法解码位置e中的字节exbd:无效的起始字节

这就是编码问题。
那我们怎么解决呢?
还给它改会来么?
再操作一遍?
不用,那样太麻烦了。
我们可以这样做。

看见我鼠标圈起来的那几个字了没?
我们把它改下,改为 gbk,再来运行下
看看效果

哎,又好了。
为什么好?因为我们使用的读取文件的编码方式,与文件存储文字所使用的编码方式一致就能够正确读取。
那后面的那个 text 是怎么回事呢?
前面的open包括 open 括号内的两个参数 都是 open 函数的一部分。
而后面的 text 则属于 open的返回值
我们用 text 这个变量(在java中,我们习惯称为把这个称为文件对象) 给它接过来了。
就相当于,这个 text 中 存贮了 将进酒.txt 文件中的所有内容。
我们可以这样来看一看这个text ,
来我们加一段代码

看到没有。
这一次我们将后面的for语句块整个的删除了
只加上一个 text.read() 就能读取这个文件中的所有内容。
而for语句的作用不过是起到一个遍历的作用
你看到 text.readLines() 这个函数没?
我们从它的名字猜起来
Read 读取 line 行 s 学过英语的都知道 这个s 此时代表的是复数的意思。
结合起来是什么?也就是 读取所有行
读取所有行之后,返回一个 list 也就是一个列表
知道什么是列表不?Excel 熟悉不?
我们来看看这个玩意

问你,第一行 是什么?将进酒,第二行,第三行呢?
同样,在python中
Readlines 返回的也是这么一个东西
我们把代码改回来
然后是 for 语句,
For 语句的格式 就是这样
For 承接list的每一行的变量 in 总的list : (加个冒号)
下面就是 要对这个 承接 list的每一行的变量 进行的操作
我们做了什么操作呢?
Print(line)
将 每一行输出的操作。
这就完了,是的,这个for语句就这么简单
我们从 英文语法的角度分析下 in

你看看说的多详细
在 什么什么 里面,在 什么什么 内,而在这里,它的意思就是 在 lines 这个这个列表里面
的line for 一下
再来看for 为了,为得到,为获取

一直循环下去,直到读取完毕。
接下来我们开始对 文本行进行下操作。
比如 给它加上序号。

可以看到所有的输出行都加上了序号。
为什么会这样?
首先我们 初始化一个变量 n
虽然Python中没有类型定义,这个确实比较烦人,但是我们给它赋值了一个数字 0
大家都知道吧,我们就知道了,它确是个 int类型的或者说数字变量。
下面在for语句中我们又加了一行
叫做 n=n+1
小学时候我们都学过公式吧
A+1=B
然后 A = 1 问B等于多少
哎,其实咱这个语句是同样的道理
只不过=号的结果放在了左边。
因为是左边先计算的,计算完毕后,我们还可以继续使用变量n来接收 n+1的值
这样就实现了递进计数。
N = n + 1
而下一条语句
Str(n) 首先要说明的是这个 str 是个函数,n 这时是个参数
Str这个函数的意思是 将 n 这个int 或者说数字类型的变量 转换为 字符串类型的变量
然后就可以实现字符串的拼接了。
由此实现了文本的字符串读取与序号添加等操作。
谢谢大家的阅读!有关python的其他内容或者文章,可以在我的主页查找。最后希望大家动动你们的小手,点赞收藏加关注哦!创作不易!
本文最后编辑于2022年10月13日22:39:17,使用系统win7,python版本3.8.10,pythonIDE pycharm 2022.2社区版。有问题可以在评论区留言!