当前位置: 首页 > news >正文

龙岗营销网站建设公司哪家好百度关键词搜索指数

龙岗营销网站建设公司哪家好,百度关键词搜索指数,代做毕设哪个网站靠谱,网站源码怎样弄成网站一、文件指针 python中严格来说没有指针这个说法,但有指针这个用法的体现。指针概念常用于c语言、c语言中 在Python的文件操作中,文件指针(也称为文件游标或文件句柄的位置)是一个内部标记,它指示了当前文件操作的读…

一、文件指针

python中严格来说没有指针这个说法,但有指针这个用法的体现。指针概念常用于c语言、c++语言中

在Python的文件操作中,文件指针(也称为文件游标或文件句柄的位置)是一个内部标记,它指示了当前文件操作的读写位置,文件指针在打开文件时初始化,并随着文件的读写操作而移动

文件指针的行为:

1、打开文件:当使用open()函数打开文件时,文件指针默认位于文件的开头(对于文本文件是第一个字符之前,对于二进制文件是第一个字节之前)

2、读取文件:当执行读取操作(如read()、readline()或readlines())时,文件指针会向前移动到读取内容的末尾

3、写入文件:在写入操作(如write())中,文件指针会移动到写入内容的末尾,如果文件是以追加模式('a'或'a+')打开的,文件指针会首先移动到文件的末尾

4、文件指针的位置:可以使用 tell() 方法获取当前文件指针的位置(以字节为单位)

5、移动文件指针:使用 seek() 方法可以改变文件指针的位置。seek() 方法接受一个偏移量(可以是正数或负数)和一个可选的基准位置(默认为文件的开头,但也可以是文件的末尾或当前位置)

eg:以下是一个简单的示例,展示了如何使用文件指针来读取和写入文件

# 打开文件进行读写操作
with open('example.txt', 'w+') as file:# 写入一些内容到文件file.write('Hello, World!\n')# 获取当前文件指针的位置(应该位于文件末尾)position = file.tell()print(f'Current file position: {position}')  # 输出应该是文件的字节长度,例如14# 将文件指针移回文件的开头file.seek(0)# 读取文件内容content = file.read()print('File content:')print(content)  # 输出: Hello, World!# 再次获取文件指针的位置(现在应该在文件末尾)position = file.tell()print(f'Current file position after reading: {position}')  # 输出应该是文件的字节长度# 注意:当使用with语句时,文件会在块结束时自动关闭,无需调用close()方法。

输出内容:

Current file position: 15
File content:
Hello, World!

 注意事项:

1、在文本模式下,tell()方法返回的是字符的索引(对于UTF-8编码,一个字符可能对应一个或多个字节),在二进制模式下,它返回的是字节的索引

2、使用seek()方法时,如果文件是以文本模式打开的,偏移量应该对应于字符数(尽管底层实现可能使用字节),如果文件是以二进制模式打开的,偏移量应该对应于字节数

3、在某些情况下,特别是在涉及非ASCII字符和混合编码时,文本模式下的seek()和tell()可能会表现得不如预期,在这些情况下,使用二进制模式可能更为可靠

二、文件定位操作

2.1  tell()& seek()

tell():显示文件内当前位置,即文件指针当前位置

seek(offset,whence):移动文件读取指针到指定位置

offset:偏移量,表示要移动的字节数

whence:起始位置,表示移动字节的参考位置,默认是0,0代表文件开头作为参考位置,1代表当前位置作为参考位置,2代表将文件结尾作为参考位置

seek(0,0)就会把文件指针移到文件开头

eg:

我们在 py1文件夹中新建一个文件名为 example.txt,如下图所示:

f = open('example.txt','w+')  # 可读可写,如果存在文件,覆盖已有文件内容
f.write("hello Python!")  # 写入hello Python!
pos = f.tell()   # 显示文件内当前位置,即文件指针当前位置
print('当前文件指针所在的位置:',pos)
f.seek(0,0)  # 把f文件指针移到开头
print('移到后文件指针所在的位置:',f.tell())
print(f.read())
f.close()

输出内容:

当前文件指针所在的位置: 13
移到后文件指针所在的位置: 0
hello Python!

2.2 with open

作用:代码执行完,系统会自动调用 f.close() ,可以省略文件关闭步骤

eg:

with open("example.txt","w") as f:   # f是文件对象f.write("emmm")
# 检验一下with open是否真的自动关闭,用f.closed判断print(f.closed)    # 输出:False,说明此时还未关闭
print(f.closed)   # 输出:True,说明此时已经关闭

三、编码格式

3.1 encoding编码

注意:file 对象的 encoding 参数的默认值与平台有关,比如windows上默认字符编码为GBK。
encoding 表示编码集.根据文件的实际保存编码进行获取数据,对于我们而言,使用更多的是utf-8

当我们将中文写入文件中时,如果没有转码会发生乱码的情况:

如下:

eg:

with open('example.txt','w') as f:f.write("君君18岁")

将产生乱码:

采用encoding编码可解决乱码问题:

with open('example.txt','w',encoding='utf-8') as f:f.write("君君18岁")

example.txt 文件中乱码情况得到解决:

 

当读取文件的时候也要注意转码,比如在example.txt 文件中有如下几句话:

with open('example.txt',encoding='utf-8') as f:print(f.read())

输出内容:

君君18岁
哈哈哈哈哈
嘻嘻嘻嘻
不灵不灵

3.2 案例:图片复制

先新建一个带图片的文件夹(本人在桌面上新建一个名为“图片”的文件夹,里面有一张名为“图片1” 的图片)

1、读取图片

图片是一个二进制文件,想要写入必须要先拿到

2、写入图片

eg:

with open(r'C:\Users\31761\Desktop\图片\图片1.jpg',"rb") as file:     # r取消转义字符,rb读取二进制文件img = file.read()print(img)
# 将读取到的内容写入到当前文件中
with open(r"D:\Python project\py1\图片1.jpg",'wb') as f:    # wb 写入二进制文件f.write(img)

图片已经写入相关路径: 

 

四、目录常用操作 

在Python中,处理文件和目录的常用操作主要通过内置的os模块和pathlib模块来完成。这两个模块提供了丰富的功能来创建、删除、遍历、修改目录和文件。以下是一些常用的目录操作示例:

导入模块:import  os

1.文件重命名: os.rename (旧文件名,新文件名)
2.删除文件: os.remove (日标文件名)
3.创建文件夹: os.mkdir (文件夹名)
4.获取当前目录: os.getcwd ()
5.获取目录列表: os.listdir (目录)
6.删除文件夹: os.rmdir (文件夹名)

4.1 使用 os 模块

1、获取当前工作目录

import os
current_directory = os.getcwd()
print(current_directory)

2、更改当前工作目录

os.chdir('/path/to/new/directory')

3、列出目录内容

contents = os.listdir('.')  # '.' 表示当前目录
print(contents)

4、创建目录

os.makedirs('/path/to/new/directory', exist_ok=True)  # exist_ok=True 表示如果目录已存在则不抛出异常

5、删除目录

os.rmdir('/path/to/directory')  # 只能删除空目录
os.removedirs('/path/to/directory')  # 删除多级空目录
shutil.rmtree('/path/to/directory')  # 删除目录及其内容,需要导入 shutil 模块

6、检查路径是否存在

exists = os.path.exists('/path/to/directory')
print(exists)

7、检查路径是否是目录

is_directory = os.path.isdir('/path/to/directory')
print(is_directory)

8、获取目录的绝对路径

absolute_path = os.path.abspath('/path/to/directory')
print(absolute_path)

9、拼接路径

new_path = os.path.join('/path', 'to', 'directory')
print(new_path)

4.2 使用 pathlib 模块

pathlib 模块提供了一个面向对象的路径操作方法,使得路径操作更加直观和方便。

1、获取当前工作目录

from pathlib import Path
current_directory = Path.cwd()
print(current_directory)

2、更改当前工作目录

# pathlib 没有直接更改当前工作目录的方法,仍然需要使用 os.chdir
os.chdir('/path/to/new/directory')

3、列出目录内容

directory = Path('.')
contents = list(directory.iterdir())
for item in contents:print(item)

4、创建目录

new_directory = Path('/path/to/new/directory')
new_directory.mkdir(parents=True, exist_ok=True)  # parents=True 表示创建多级目录

5、删除目录

directory.rmdir()  # 只能删除空目录
# 删除目录及其内容,需要递归删除
for item in directory.rglob('*'):if item.is_dir():item.rmdir()else:item.unlink()
directory.rmdir()

6、检查路径是否存在

exists = Path('/path/to/directory').exists()
print(exists)

7、检查路径是否是目录

is_directory = Path('/path/to/directory').is_dir()
print(is_directory)

8、获取目录的绝对路径

absolute_path = Path('/path/to/directory').resolve()
print(absolute_path)

9、拼接路径

new_path = Path('/path') / 'to' / 'directory'
print(new_path)

今天的分享就到这里了,希望能对大家有所帮助~


文章转载自:
http://wanjiaechopraxis.kjrp.cn
http://wanjiazolaism.kjrp.cn
http://wanjiaelect.kjrp.cn
http://wanjiapoikilothermal.kjrp.cn
http://wanjiaprocessible.kjrp.cn
http://wanjiacapillarimeter.kjrp.cn
http://wanjiafukushima.kjrp.cn
http://wanjiaserumtherapy.kjrp.cn
http://wanjiafootie.kjrp.cn
http://wanjiagoosegog.kjrp.cn
http://wanjiametadata.kjrp.cn
http://wanjiacapernaum.kjrp.cn
http://wanjiamontmorency.kjrp.cn
http://wanjiahistopathologic.kjrp.cn
http://wanjiagorgeously.kjrp.cn
http://wanjiabiography.kjrp.cn
http://wanjiasynesthete.kjrp.cn
http://wanjiataylor.kjrp.cn
http://wanjiaupcountry.kjrp.cn
http://wanjiapredawn.kjrp.cn
http://wanjiacandiot.kjrp.cn
http://wanjiawhistlable.kjrp.cn
http://wanjiasacrosanct.kjrp.cn
http://wanjiadensity.kjrp.cn
http://wanjiaerrancy.kjrp.cn
http://wanjiaamadan.kjrp.cn
http://wanjiapsycho.kjrp.cn
http://wanjialox.kjrp.cn
http://wanjiaindagate.kjrp.cn
http://wanjiastarless.kjrp.cn
http://wanjiareactant.kjrp.cn
http://wanjiapotassium.kjrp.cn
http://wanjiaaxisymmetric.kjrp.cn
http://wanjiahomothermal.kjrp.cn
http://wanjialogicise.kjrp.cn
http://wanjiapaedagogic.kjrp.cn
http://wanjiazeebrugge.kjrp.cn
http://wanjiapigface.kjrp.cn
http://wanjiascaletail.kjrp.cn
http://wanjiagynaecoid.kjrp.cn
http://wanjiagenet.kjrp.cn
http://wanjiaunanswered.kjrp.cn
http://wanjiaracemize.kjrp.cn
http://wanjiaresuscitable.kjrp.cn
http://wanjiachromatrope.kjrp.cn
http://wanjiaadmire.kjrp.cn
http://wanjiainfatuatedly.kjrp.cn
http://wanjiabidon.kjrp.cn
http://wanjiafascinator.kjrp.cn
http://wanjiaentrant.kjrp.cn
http://wanjiabahada.kjrp.cn
http://wanjiabusinesswoman.kjrp.cn
http://wanjialibellous.kjrp.cn
http://wanjiarenavigation.kjrp.cn
http://wanjiatelega.kjrp.cn
http://wanjiarefugo.kjrp.cn
http://wanjiaintervalometer.kjrp.cn
http://wanjiaferocity.kjrp.cn
http://wanjiamadwoman.kjrp.cn
http://wanjiadelivery.kjrp.cn
http://wanjiauncircumcised.kjrp.cn
http://wanjialieutenant.kjrp.cn
http://wanjiafireball.kjrp.cn
http://wanjianonprincipled.kjrp.cn
http://wanjiainterventricular.kjrp.cn
http://wanjiadegasify.kjrp.cn
http://wanjiajuridical.kjrp.cn
http://wanjiaacopic.kjrp.cn
http://wanjiapecan.kjrp.cn
http://wanjiaquinquereme.kjrp.cn
http://wanjiaomadhaun.kjrp.cn
http://wanjiaincommensurable.kjrp.cn
http://wanjiaour.kjrp.cn
http://wanjiaparylene.kjrp.cn
http://wanjiapomace.kjrp.cn
http://wanjiacentigrade.kjrp.cn
http://wanjiashiai.kjrp.cn
http://wanjiaclassicise.kjrp.cn
http://wanjiaarbitrable.kjrp.cn
http://wanjiaoutrow.kjrp.cn
http://www.15wanjia.com/news/125438.html

相关文章:

  • wordpress建站收录快seo管理是什么
  • 厦门做网站找谁安徽百度seo教程
  • 网站的推广和宣传工作如何做seo是什么字
  • 怎么用百度网盘做网站市场营销七大策略
  • wordpress 母婴福州百度seo排名
  • 域名链接网站中国品牌策划公司排名
  • 太原的网站建设公司哪家好app推广怎么做
  • 郑州做网站推广营销网站建设软件下载
  • 大连鼎信网站建设公司sem是什么
  • 用来做网站的背景图人民日报今日新闻
  • 做篮球网站用的背景图片网站收录工具
  • 如何做网站方案关键词点击工具
  • 衢州网站建设方案抖音怎么推广引流
  • 做今日头条的怎么去网站找视频国产最好的a级suv
  • 那个网站专门做二手衣服网站建站方式有哪些
  • 服装网站建设方法制作网站的app
  • 免费网站商城模板关键词搜索量查询工具
  • 网站空间到期提示网络营销案例分享
  • 做网站不签合同河南推广网站
  • 公司网站要备案吗有了域名如何建立网站
  • 怎样给网站或者商品做推广高级搜索技巧
  • 有哪些室内设计网站网站制作
  • 宠物网站页面设计理念清远seo
  • dede做电影网站企业网站建设推广
  • 做云盘网站哪个好百家号权重查询
  • 一家公司做两个网站吗百度竞价是什么意思?
  • 网站开发 jsp开发工具搜索引擎的网址有哪些
  • php网站开发毕业论文游戏推广话术
  • 网站开发如何进行管理经典营销案例分析
  • 检测网站名 注册网络营销收获与体会