小试 Python(二)
if x in y
统计两个数组的相同元素个数示例:
1 |
|
上面的 if i in num2,i 是遍历 num1 数组的每一次值,通过 if i in num2 来判断 i 是否在 num2 数组中。
二维数组
不要求每一行的元素个数相同
二维数组定义及遍历:
1 |
|
运算符**
这个运算符,我目前学过的语言中并没有遇到过,它是指数运算符,它的优先级和数学上一样,是最高的。
1 |
|
结果:
注释
单行注释: # 注释内容
多行注释:三个单引号包住注释部分
1 |
|
异常处理
和 Java 的异常处理机制一样
1 |
|
可以直接在异常类型后加as 变量名
,之后直接 print(变量名),打印出提示信息。
代码:
1 |
|
结果:
文件方法
open(参数 a, 参数 b)函数,参数 a 和参数 b 都是字符串形式,参数 a 是要打开的文件的相对路径或绝对路径,参数 b 是文件打开模式。后面需要关闭文件。
参数 b:
- “r”:以只读方式打开文件。文件的指针将会放在文件的开头。这是默认模式。
- “w”:打开一个文件只用于写入。如果该文件已存在则打开文件,并从开头开始编辑,即原有内容会被删除。如果该文件不存在,创建新文件。
- “r+”:打开一个文件用于读写。文件指针将会放在文件的开头。
- “w+”:打开一个文件用于读写。如果该文件已存在则打开文件,并从开头开始编辑,即原有内容会被删除。如果该文件不存在,创建新文件。
- “a”:打开一个文件用于追加。如果该文件已存在,文件指针将会放在文件的结尾。也就是说,新的内容将会被写入到已有内容之后。如果该文件不存在,创建新文件进行写入。
读文件
readable():查看文件是否可读
read():读整个文件
readline():读一行
readlines():返回一个数组,数组的每一个元素分别是
文件的一行
1 |
|
read()这里的代码会空两行,一行是 print()的一行,还有一行是 read()每打印出一行的换行。
read()在当前指针处开始读,而执行完一次后,指针在文件尾部,其后为空,所以之后的read()每次运行均为空。readline()、readlines()同理
readlines()
要打开的文件:
1 |
|
readlines()打印出来:
1 |
|
写文件
- open()函数的第二个参数为”a”,在后面添加新内容,具体如参数 b 中所示。
这里需要注意:没有换行符号的话会出现写的东西非常混乱。
1 |
|
1 |
|
应该改为file.write("\n123")
,才可以实现每一次增加的都是单独一行而不会混乱。 2. open()函数的第二个参数为”w”。和上面的相似,不同的是:不是在文件后添加新内容,而是重写文件内容。
读写文件
open()函数的第二个参数为”r+”或”w+”。
“r+”和”w+”相同点:
- 文件权限都是可读可写
- 文件的指针放在文件的开头
不同点:
“r+”不是重写文件,而是覆盖,即当原来的文件内容比写的文件内容少时,后面的内容还在,而”w+”是重写文件。
例子:
原来的内容:
123456789
写”abc”:
“r+”:变为”abc456789”
“w+”:变为”abc”
自己尝试后出现的问题:
- 打印不出东西:
1 |
|
- 每次打印的都是文件打开前的内容,且从重写文件变化成了在文件后添加内容,即和参数为”a”时一样。
1 |
|
原因:
文件指针在文件的开头,经过 write()方法对文件进行写操作后,这时候的文件指针已经来到了文件的尾部。
read()在当前指针处开始读,而当前指针在文件尾部,其后为空,所以打印文件为空(两行空行)。
readlines()时回到文件开头处开始读。而刚刚写入的还没有保存,所以只能读出写入操作之前的内容。写的时候在文件尾部写。未解决疑问:为什么 write()搭配 readlines()后,写文件时是在文件尾部写,而搭配 read()时是在文件开头写。
上面问题解决方案:使用 seek()函数,让文件指针指向需要的位置。seek(0)即指向文件开头。
1 |
|
类
构造函数
1 |
|
例子:
其中,类单独放在了另一个 py 文件中。
Student 类
1 |
|
main 类:
1 |
|
继承
1 |
|
实例:
Chef 类(父类):
1 |
|
ChineseChef(子类):
1 |
|
main 类:
1 |
|
解释器
环境变量设置
- 右键点击”计算机”,然后点击”属性”
- 点击”高级系统设置”
3. 点击”环境变量”
4. 选中”用户变量的 Path”,点击”编辑”
5. 点击”新建”,添加 python 安装路径
6. 之后一直点击”确定”即可
cmd 写 Python
- win + r, 输入”cmd”
- 输入”python”, 变成下图所示
3. 写 python 代码,如下图所示
学习:Youtube:Mike Dane
文件读写部分参考:Python 文件进行写操作后立即读出的结果、原因分析、解决方法