路径的获取

对当前目录的获取

1 path = os.getcwd() 2 print("获取到的当前目录是:({})".format(path))

获取当前文件所在的绝对路径

import os

path = os.path.realpath(__file__) print("获取到的当前路径是:({})".format(path))

路径的拼接,生成新的路径

(以下两种都可以) 方法一

import os
path = os.getcwd()+"/abc" print("获取到的当前目录是:({})".format(path))

os.mkdir(path) #创建1个新目录

方法二

 1 import os  2  3 new_path = os.path.join(os.getcwd(),"abc")  4 print(new_path)  5 os.mkdir(new_path)  6  7 # 使用join拼接目录新建时,需要确保最后一级之前的目录都存在  8 new_path = os.path.join(os.getcwd(),"abc","def")  9 print(new_path) 10 os.mkdir(new_path) 11 12 13 # 上述可以写成如下方法 14 new_path = os.path.join(os.getcwd(),"abc\def") 15 print(new_path) 16 os.mkdir(new_path)

判断是文件还是目录

""" isfile() 判断的是文件
isdir()  判断的是目录 """ print (os.path.isfile(__file__))   返回值为布尔值 true print (os.path.isfile(os.getcwd()))   返回值为布尔值 false print (os.path.isdir(os.getcwd()))   返回值为布尔值 Ture # exists()判断文件是否存在 print(os.path.exists(os.path.realpath(__file__)))   返回值为布尔值 Ture


列出当前路径下所有的目录和文件

print(os.listdir(os.getcwd()))

练习题

给定一个路径,请打印出所有的路径(直到这个路径下没有目录为止)

思路:递归函数

""" 大致思路和代码如下 """ import os for path in os.listdir(os.getcwd()): if os.path.isdir(path):
        os.listdir(os.path.join(os.getcwd(), path)) print("({})还需要进一步处理".format(path)) else: print("已经最后一级",os.path.join(os.getcwd(), path))


Python中OS对目录的操作以及引用的更多相关文章

  1. Python爬虫scrapy框架Cookie池(微博Cookie池)的使用

    下载代码Cookie池(这里主要是微博登录,也可以自己配置置其他的站点网址)下载代码GitHub:https://github.com/Python3WebSpider/CookiesPool下载安装过后注意看网页下面的相关基础配置和操作!!!!!!!!!!!!!自己的设置主要有下面几步:1、配置其......

  2. Python-zip()函数

    Python-zip()函数的一些相关知识Python内置help()的解释返回一个元组迭代器,其中第i个元组包含每个参数序列或可迭代对象中的第i个元素。当最短的可迭代输入耗尽时,迭代器将停止。使用单个可迭代参数,它将返回1元组的迭代器。没有参数,它将返回一个空的迭代器。 功能演示uppercase......

  3. Python列表推导式玩法

    前言列表做为python的基础,是必须学习的语法之一。一些基础的之前已经是反复温习和使用了,今天我们来学习它的进阶版--》列表推导式。列表推导式:优点:是将所有的值一次性加载到内存中,相比于for循环生成的列表执行速度快,并且语法精简,一行代码就完成for循环多行代码所要完成的事情。缺点:代码的可阅......

  4. 基于 Python 实践感知器分类算法

    Perceptron是用于二进制分类任务的线性机器学习算法。它可以被认为是人工神经网络的第一种和最简单的类型之一。绝对不是“深度”学习,而是重要的组成部分。与逻辑回归相似,它可以快速学习两类分类任务在特征空间中的线性分离,尽管与逻辑回归不同,它使用随机梯度下降优化算法学习并且不预测校准概率。在本教程......

  5. 详解用 python-docx 创建浮动图片

    相信大家对python-docx这个常用的操作docx文档的库都不陌生,它支持以内联形状(Inline Shape)的形式插入图片,即图片和文本之间没有重叠,遵循流动版式(flow layout)。但是,截至最新的0.8.10版本,python-docx尚不支持插入浮动图片(floating pic......

  6. 将不规则的Python多维数组拉平到一维的方法实现

    原始需求:例如有一个列表:l = [[1, 2, 3], [4, 5, 6], [7, 8, 9]]希望把它转换成下面这种形式:[1, 2, 3, 4, 5, 6, 7, 8, 9]其实这个非常简单,我将分享三个一行式代码来解决这个问题。但如果是下面这种不规则的多维列表:l = [[1, 2], [......

  7. 10步写了个Django网站

    Django做网站只要10步,真的只有10步,不信?咱们来数数……今天主要讲解用Pycharm编辑器搭建网站,网站功能是 实现在局域网中快速传递大文件! 比如:同事要给你个1G的文件,你丢一个网站链接给他。他上传后,文件就在你电脑啦!演示效果如下动图:从电脑F磁盘通过浏览器上传,在D盘出现文件,这里......

  8. python 合并列表的八种方法

    Python 语言里有许多(而且是越来越多)的高级特性,是 Python 发烧友们非常喜欢的。在这些人的眼里,能够写出那些一般开发者看不懂的高级特性,就是高手,就是大神。但你要知道,在团队合作里,炫技是大忌。为什么这么说呢?我说下自己的看法:越简洁的代码,越清晰的逻辑,就越不容易出错;在团队合作中,......

  9. pandas快速处理Excel,替换Nan,转字典的操作

    pandas读取Excelimport pandas as pd# 参数1:文件路径,参数2:sheet名pf = pd.read_excel(path, sheet_name='sheet1')删除指定列# 通过列名删除指定列pf.drop(['序号', '替代', '签名'], axis=1, ......

  10. opencv python 对指针仪表读数识别的两种方式

    我尝试了两种方式用opencv 对指针仪表进行读数识别,1. 先模板匹配,然后边缘检测 + 霍夫直线2. 按轮廓大小过滤,然后边缘检测 + 霍夫直线两种方式对光线都非常敏感其中第一种的应用范围更广,背景复杂一点也能识别到个人比较喜欢这种方式第二种的限制多一点,对背景、光线条件要求比较高对于固定位置,......

随机推荐

  1. MySQL MGR搭建过程中常遇见的问题及解决办法

    MGR搭建过程中遇到的一些故障 实际中我一共部署了三套MGR环境,分别是单机多实例的MGR环境,多机同网段的MGR环境,多机不同网段的MGR环境,部署的过程大同小异,但是还是有一些有出入的地方,这里把部署过程遇到的故障列举出来,供大家参考,如果能有幸解决您在部署时候的问题,那是极好......

  2. PHP中强制类型转换的示例详解

    前言学过静态语言开发的朋友对类型转换不会陌生,比如Java、C#、C++等。静态语言的好处就是变量强制必须指定类型,这也是编译的要求,所以大部分编译型的语言都会有强制变量类型的要求。而PHP据说也会在PHP8中加入JIT实现编译功能,并且在7.4中就会引入变量声明时的类型指定。下面我们先看看目前PH......

  3. 基于Redo Log和Undo Log的MySQL崩溃恢复流程

    在之前的文章「简单了解InnoDB底层原理」聊了一下MySQL的Buffer Pool。这里再简单提一嘴,Buffer Pool是MySQL内存结构中十分核心的一个组成,你可以先把它想象成一个黑盒子。黑盒下的更新数据流程当我们查询数据的时候,会先去Buffer Pool中查询。如果Buffer Po......

  4. python asyncio 协程库的使用

    asyncio 是 python 力推多年的携程库,与其 线程库 相得益彰,更轻量,并且协程可以访问同一进程中的变量,不需要进程间通信来传递数据,所以使用起来非常顺手。asyncio 官方文档写的非常简练和有效,半小时内可以学习和测试完,下面为我的一段 HelloWrold,感觉可以更快速的帮你认识......

  5. jquery文本框内容改变事件

    /** * 内容改变时并不会触发事件,但是在失去焦点的时候会触发。*/$("#inputid").change(function(){ console.log($(this).val());});/** * 只要文本类容发生改变,就会触发该事件 */$("#inp......

  6. 详解Pymongo常用查询方法总结

    Python 直接连接mongodb数据库进行查询操作1、安装所需模块使用到的是pymongo模块,安装方法:pip install pymongo2、环境验证3、连接数据库import pymongodef operating_mongodb():client = pymongo.MongoC......

  7. 超有用的linux笔记

    名词解释根目录说明tree -L 1.├── bin -> usr/bin # 英语binary的缩写,表示”二进制文件“,bin目录包含了会被所有用户使用的可执行程序├── boot # 英语boot表示”启动“,boot目录包含与Linux启动密切相关的文件├── dev # 英语devi......

  8. C# StreamReader类实现读取文件的方法

    在 C# 语言中 StreamReader 类用于从流中读取字符串。它继承自 TextReader 类。StreamReader 类的构造方法有很多,这里介绍一些常用的构造方法,如下表所示。构造方法说明StreamReader(Stream stream)为指定的流创建 StreamReader 类......

  9. Python 实现进度条的六种方式

    一、普通进度条示例代码import sysimport timedef progress_bar():for i in range(1, 101):print("\r", end="")print("Download progress: {}%: &......

  10. Java高并发与多线程(二)-----线程的实现方式

    今天,我们开始Java高并发与多线程的第二篇,线程的实现方式。通常来讲,线程有三种基础实现方式,一种是继承Thread类,一种是实现Runnable接口,还有一种是实现Callable接口,当然,如果我们铺开,扩展一下,会有很多种实现方式,但是归根溯源,其实都是这几种实现方式的衍生和变种。我们依次来......