Python教程

Python的光标移动、文件概念、函数简介

本文主要是介绍Python的光标移动、文件概念、函数简介,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

Python基础知识

文件内光标的移动

'''
a.xt=C你好啊
with open(r'a.txt','r',encoding='utf8') as f:
    data = f.read(3) #C你好
    print(data) 
在文本模式下read括号内的数字表示读取几个字符
with open(r'a.txt', 'rb') as f:
    data = f.read(4)  # C你
    print(data.decode('utf8'))
在二进制模式下read括号内的数字表示读取几个字节 (英文表示一个字节 中文三个字节起步) 
with open(r'a.txt', 'r', encoding='utf8') as f:
    data = f.read(3)  # C你好
    print(data)
    data1 = f.read()  #啊
    print(data1)
打印data1光标上面执行至“好”末尾,所以打印“啊”
​
tell()  获取光标移动的字节数
'''
seek(offset,whence)
    offset  控制光标移动的位移量(字节)
    whence  模式
  基于文件开头移动多少字节
  基于光标当前所在位置移动多少字节
  基于文件末尾移动多少字节
    ps:1和2只能在二进制模式下使用 0无所谓
"""
# with open(r'aaa.txt', 'r', encoding='utf8') as f:
#     data = f.read(3)  # a你好
# print(data)
# print(f.tell())  # 7
# data1 = f.read()
# print(data1)  # 啊
​
# with open(r'aaa.txt', 'rb') as f:
#     data = f.read(4)  # a你
#     print(data.decode('utf8'))
​
​
# 代码控制光标移动
# with open(r'aaa.txt', 'r', encoding='utf8') as f:
#     data = f.read()  # a你好
#     print(data)
#     f.seek(0,0)
#     print(f.read())
​
​
# with open(r'aaa.txt', 'rb') as f:
#     data = f.read(4)
#     print(data.decode('utf8'))  # a你
#     # f.seek(-3,1)
#     # print(f.read().decode('utf8'))  # 你好啊
#     f.seek(-3, 2)
#     print(f.read().decode('utf8'))  # 啊

文件内数据修改

'''
机械硬盘存储数据的原理
    1、数据的修改 其实是覆盖写并未添加删除
    2、数据的删除 占有态和自由态
'''
# 方式1:覆盖式
with open(r'a.txt', 'r', encoding='utf8') as f:
    data = f.read()
new_data = data.replace('aaa', 'bbb')
with open(r'a.txt', 'w', encoding='utf8') as f1:
    f1.write(new_data)
'''
优点:硬盘只占用一块空间
缺点:数据量较大的时候会内存溢出
'''
​
# 方式2:重命名
import os
​
with open('a.txt', 'r', encoding='utf8') as read_f, \
        open('a.txt', 'w', encoding='utf8') as wrife_f:
    for line in read_f:
        wrife_f.write(line.replace('bbb', 'ccc'))
'''
优点:不会造成内存溢出
缺点:可能有那么一段时间需要占用硬盘两块空间 也有可能在内存中穿件没有刷到硬盘
'''

函数简介

'''
1、函数
    在不同的位置反复执行相同的代码
2、循环 
    在相同的位置反复执行相同的代码
'''
l1 = [1, 2, 3, 4, 5, 6]
# 自定义统计方法
def my_len():
    value_couunt = 0
    for i in l1:
        value_couunt += 1
    print(value_couunt)
my_len()
优点:减少代码量
len()   属于内置函数
'''
自己写的代码缺陷:
    1.只能统计某个固定的数据类型里面的数据值个数
    2、没有产生新的值(返回值)
'''
​
​
这篇关于Python的光标移动、文件概念、函数简介的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!