C 怎么处理windows路径_python学习笔记-7:文件读写之文件与文件路径

文件关键属性:路径+文件名

根据已知的文件路径生成包含正确路径分隔符的文件路径字符串:

import osstt = os.path.join('usr','bin','spam')print(stt)#usrbinspam

windows的路径分隔符为,字符串中使用需要转义字符,因此应输入为

当前工作目录

程序运行时,都有一个当前工作目录。要查看当前工作目录,可用os.getcwd();要改变当前工作目录,可用os.chdir(),如:

import osos.getcwd()os.chdir('C:')

如果改变的当前工作目录不存在,程序会报错

89d89ebcc3a623fb4cd25d28ad9ea92d.png

相对路径和绝对路径的概念和表示

创建新文件夹:os.makedirs()

import osos.makedirs('C:甥敳獲EDZDesktopjjuu')

os模块的os.path包含可很多与文件名和文件路径相关的函数。

处理相对路径和绝对路径的函数

os.path.abs(path)参数为相对路径,函数返回绝对路径的字符串

os.path.isabs(path)如果参数是一个绝对路径,返回true,否则返回false

os.path.relpath(path,start)返回从start路径到path路径的相对路径的字符串。如果没有提供start,就使用当前工作目录。

代码示例:

>>> os.path.abspath('.')'C:Python34'>>> os.path.abspath('.Scripts')'C:Python34Scripts'>>> os.path.isabs('.')False>>> os.path.isabs(os.path.abspath('.'))True>>> os.path.relpath('C:Windows', 'C:')'Windows'>>> os.path.relpath('C:Windows', 'C:spameggs')'....Windows'>>> os.getcwd()'C:Python34'

os.path.basename()和os.path.dirname()

os.path.dirname(path)将返回参数中最后一个斜杠之前所有的内容

os.path.basename(path)将返回参数中最后一个斜杠之后所有的内容

代码示例:

>>> path = 'C:WindowsSystem32calc.exe'>>> os.path.basename(path)'calc.exe'>>> os.path.dirname(path)'C:WindowsSystem32'

如果同时需要一个路径的目录名称和基本名称,就可以调用os.path.split(),获得这两个字符串的元组,像这样:

>>> (os.path.dirname(calcFilePath), os.path.basename(calcFilePath))('C:WindowsSystem32', 'calc.exe')

使用 split()字符串方法,并根据 os.path.sep 中的字符串进行分割。

>>> calcFilePath.split(os.path.sep)['C:', 'Windows', 'System32', 'calc.exe']

os.path.getsize(path)

返回path参数中文件的字节数

注:调用 os.listdir(path)将返回文件名字符串的列表,包含 path 参数中的每个文件

检查路径有效性

如果你提供的路径不存在,许多 Python 函数就会崩溃并报错。os.path 模块提供了一些函数,用于检测给定的路径是否存在,以及它是文件还是文件夹。

如果 path 参数所指的文件或文件夹存在,调用 os.path.exists(path)将返回 True,否则返回 False。

如果 path 参数存在,并且是一个文件,调用 os.path.isfile(path)将返回 True,否则返回 False。

如果 path 参数存在,并且是一个文件夹,调用 os.path.isdir(path)将返回 True,否则返回 False。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/244903.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

android手机图标 足球球星,世界足坛九大现役球星标志性绰号,第一名所有人都服!...

原标题:世界足坛九大现役球星标志性绰号,第一名所有人都服!9,“大腿”桑切斯自打智利天王桑切斯离开当年无比辉煌的巴萨加盟阿森纳后,就被无数球迷冠以“大腿”的绰号,当然这完全源自于他在英超阿森纳队中极…

mysql 互为主备 宕机 数据丢失_Devops部署-mysql主备多从搭建

​双主多从架构原理介绍IP端口账号密码服务名10.1.1.23306root/syncabc123!数据库A10.1.1.33306root/syncabc123!数据库B10.1.1.43306root/syncabc123!数据库C1.两台mysql都可读写,互为主备,默认只使用一台(masterA)负责数据的写入…

sourcetree mac 免登录_「vscode remote ssh 免登录」mac

如果你只知道传统的ssh操作,或者sftp/ftp上传下载操作,那可能有点太low了。强烈推荐你使用 vscode remote ssh。举个栗子来形象比喻一下:钥匙开门 和 指纹开门 的区别。已经用 vscode remote ssh 功能有很久了,这种体验真的太棒了…

signature=9e6873686326b073f8f457fa0e6c2f70,Signature required

摘要:Model comprehension and effective use and reuse of complex subsystems are problems currently encountered in the automotive industry. To address these problems we present a technique for extracting, presenting, and making use of signatures f…

python中汉字与变量不可同时出现_Python语言应用培训课(选择练习)

第一部分1、多选题:Python在金融中的运用包括( )选项:A:绩效分析B:风险分析C:程序化交易D:量化分析答案: 【绩效分析;风险分析;程序化交易;量化分析】第二部分1、判断题:python语言支持中文字符作为变量名称,但具有语法意义的符号…

python find函数 和index的区别_find方法和index方法的区别

Python find(): find 方法检测字符串中是否包含子字符串 str ,如果指定 beg(开始) 和 end(结束) 范围,则检查是否包含在指定范围内,如果包含子字符串返回开始的索引值,否…

html5图像映射坐标怎么看,如何将AxesImage中的坐标映射到已保存图像文件中的坐标?...

这是尝试从matplotlib获取精确像素值的更令人困惑的部分之一. Matplotlib将绘制精确像素值的渲染器与绘制图形和轴的画布分开.基本上,最初创建(但尚未显示)图形时存在的渲染器不一定与显示图形或将其保存到文件时使用的渲染器相同.你正在做的是正确的,但是它使用的是初始渲染器…

vue获取元素距离页面顶部的距离_VUE实时监听元素距离顶部高度的操作

效果图如下所示.html今日热门今日热销.jsmounted(){window.addEventListener(scroll,this.handleScrollx,true)},methods: {handleScrollx() {console.log(滚动高度,window.pageYOffset)console.log(距离顶部高度,this.$refs.pronbit.getBoundingClientRect().top)},}补充知识&…

鸿蒙首饰用什么合成,天下HD鸿蒙炼炉是什么?鸿蒙炼炉讲解

在玩天下HD的时候各位又是否知道鸿蒙炼炉是什么呢?其实鸿蒙炼炉是游戏之中一个很重要的系统,而对于这个系统本次小编就给各位带来了鸿蒙炼炉讲解。或许各位都有用到天下HD的鸿蒙炼炉系统,但是各位又是否了解鸿蒙炼炉系统是怎么样的呢&#xf…

如何区分网线是几类的_小移课堂 | 网线这样选,网速才能嗖嗖的!

在家宅到长蘑菇的日子里最亲近的,除了家人,就是WiFi想必大家碰上网速不好的时候都会很抓狂为什么家里的网络明明签约的是千兆可网速一直上不去?网线,是卡住网速的关键因素!问网线不是通用的吗?还要用专门的网线吗&…

navicat premium 链接postgresql 无法加载表_PostgreSQL 每周新闻 2020311

PostgreSQL 每周新闻 2020-3-11英文原文地址:https://postgresweekly.com/issues/346Postgres子事务和性能本文展示了过度使用子事务对性能的影响,以及如何诊断在您的数据库里是否有这样的问题。Laurenz AlbePostgreSQL匿名器0.6:假名化和改进…

python无法打开_如何解决Windows命令行无法运行python文件?

我在使用windows的命令行运行python文件,但是每次出现的都是这种情况我设置了Path,D:Python,后来又设置了个PythonPath,添加了Lib和DLLS的路径,但是没用。 我觉得还是设置环境变量的问题,请问大家有什么办法…

iis7设置html支持asp,Win7下启用IIS7配置ASP运行环境的详细方法

第一次在windows7下配置IIS,虽然有丰富的xp下配置IIS的经验,但还是会遇到不少的问题。特别是对入门者来说,搞清一些东西还是挺费时间的。其实win7下的IIS7配置过程是非常简单的。下面让seo博客来详细的介绍一下win7下配置IIS7环境运行ASP网站…

java 手写阻塞队列_Java阻塞队列的实现

阻塞队列与普通队列的区别在于,当队列是空的时,从队列中获取元素的操作将会被阻塞,或者当队列是满时,往队列里添加元素的操作会被阻塞。试图从空的阻塞队列中获取元素的线程将会被阻塞,直到其他的线程往空的队列插入新…

python语句解释_深入理解python with 语句

深入理解python with 语句 python中with 语句作为try/finally 编码范式的一种替代, 适用于对资源进行访问的场合,确保不管使用过程中是否发生异常都会执行必要的”清理”操作,释放资源,比如文件使用后自动关闭、线程中锁的自动获取和释放等 1…

js怎么设置z index.html,HTML5 Canvas set z-index

j0kEli Stone提出了一个问题:HTML5 Canvas set z-index,或许与您遇到的问题类似。回答者markE给出了该问题的处理方式:Yes..kind of yes. You can use compositing to "draw behind" existing pixels.ctx.globalCompositeOperation…

python搭建分布式集群_Spark完全分布式集群搭建【Spark2.4.4+Hadoop3.2.1】

一.安装Linux需要:3台CentOS7虚拟机注意:虚拟机的网络设置为NAT模式,NAT模式可以在断网的情况下连接上虚拟机而桥架模式不行!二.设置静态IP跳转目录到:修改IP设置:备注:执行scp命令拷贝设置文件…

ajax post提交数据_详解Ajax异步加载

前言:作为资深球迷,提起Ajax,第一反应想到的是阿贾克斯,那个曾培养出伊布,范德法特,苏亚雷斯,亨特拉尔等一众球星的荷甲著名球队。很显然,我们今天说的Ajax,跟足球没有任…

win10改计算机用户名,win10系统修改本地账号用户名的操作方法

很多小伙伴都遇到过对win10系统修改本地账号用户名进行设置的困惑吧,一些朋友看过网上对win10系统修改本地账号用户名设置的零散处理方法,并没有完完全全明白win10系统修改本地账号用户名的操作方法非常简单,只需要1、首先打开Win10控制面板&…

2020 ccf推荐中文期刊_CCF推荐国际学术期刊

中国计算机学会推荐国际学术期刊(计算机系统与高性能计算)一、A类序号刊物简称刊物全称出版社网址1TOCSACM Transactions on Computer SystemsACM2TOCIEEE Transactions on ComputersIEEE3TPDSIEEE Transactions on Parallel and DistributedSystemsIEEE二、B类序号刊物简称刊物…