1.os.getcwd()--起始执行目录
获取当前执行程序文件所在的目录,需要注意的是,getcwd不是获取代码所在文件的目录,也不是获取执行文件所在的目录,而是起始执行目录。
目录结构:

test.py
testsub_file.py

test.py

from test import sub_filesub_file.xx()

sub_file.py

import osdef xx():print(os.getcwd())

运行:

E:\gitcode>python Lottery/test.py
E:\gitcode

可见,执行输出的是起始执行目录

2.sys.path[0]或sys.argv[0] --执行文件所在目录
sub_file.py

import sysdef xx():print(sys.path[0])

运行:

E:\gitcode>python Lottery/test.py
E:\gitcode\Lottery

3.os.path.dirname(os.path.realpath(file)) --当前文件所在目录
sub_file.py

import osdef xx():print(os.path.dirname(os.path.realpath(__file__)))

运行:

E:\gitcode>python Lottery/test.py
E:\gitcode\Lottery\test

python os详解相关推荐

  1. 【python】详解multiprocessing多进程-Pool进程池模块(二)

    [python]详解multiprocessing多进程-process模块(一) [python]详解multiprocessing多进程-Pool进程池模块(二) [python]详解multip ...

  2. python多线程详解 Python 垃圾回收机制

    文章目录 python多线程详解 一.线程介绍 什么是线程 为什么要使用多线程 总结起来,使用多线程编程具有如下几个优点: 二.线程实现 自定义线程 守护线程 主线程等待子线程结束 多线程共享全局变量 ...

  3. Python数据类型详解03

    原文博客地址: Python数据类型详解03 第一篇Python数据类型详解01中主要介绍了Python中的一些常用的数据类型的基础知识 第二篇Python数据类型详解02文章中, 详细介绍了数字(N ...

  4. pydicom读取头文件_.dcm格式文件软件读取及python处理详解

    要处理一些.dcm格式的焊接缺陷图像,需要读取和显示.dcm格式的图像.通过搜集资料收集到一些医学影像,并通过pydicom模块查看.dcm格式文件. 若要查看dcm格式文件,可下echo viewe ...

  5. Python|SQL详解之DDL|DML|DQL|DCL|索引|视图、函数和过程|JSON类型|窗口函数|接入MySQL|清屏|正则表达式|executemany|语言基础50课:学习(14)

    文章目录 系列目录 原项目地址 第41课:SQL详解之DDL 建库建表 删除表和修改表 第42课:SQL详解之DML insert操作 delete 操作 update 操作 完整的数据 第43课:S ...

  6. python区块链开发_Fabric区块链Python开发详解

    Hyperledger Fabric是最流行的联盟区块链平台.Fabric区块链Python开发详解课程 涵盖Fabric区块链的核心概念.Fabric网络搭建.Node链码开发.Python应用开发 ...

  7. python装饰器setter_第7.27节 Python案例详解: @property装饰器定义属性访问方法getter、setter、deleter...

    上节详细介绍了利用@property装饰器定义属性的语法,本节通过具体案例来进一步说明. 一.    案例说明 本节的案例是定义Rectangle(长方形)类,为了说明问题,除构造函数外,其他方法都只 ...

  8. 【python】详解类class的继承、__init__初始化、super方法

    原文链接; https://blog.csdn.net/brucewong0516/article/details/79121179?utm_medium=distribute.pc_relevant ...

  9. python与golang_Golang与python线程详解及简单实例

    Golang与python线程详解及简单实例 在GO中,开启15个线程,每个线程把全局变量遍历增加100000次,因此预测结果是 15*100000=1500000. var sum int var ...

最新文章

  1. 中大计算机研究生英语免修条件,通知|关于接受2017级理科研究生 基础英语课程免修免考申请的通知...
  2. 算法初步——two pointers
  3. es集群搭建_滴滴Elasticsearch 集群跨版本升级与平台重构之路
  4. Java循环练习: 有1、2、3、4四个数字,能组成多少个无重复数字的三位数?都是多少?...
  5. 远程工具-SecureCRT/SecureFX
  6. canoco5主成分分析步骤_SPSS数据分析1——主成分分析
  7. Windows 10 到期时间如何查看
  8. 成功三步曲:有勇、有谋、有德
  9. 基于数据形式说明杜兰特的技术特点的分析(含Python实现讲解部分)
  10. 基于PHP的学生作业管理系统
  11. 今日错题(10.6)
  12. 黄页宝贝工具栏软件发布了
  13. speedoffice,一款Excel和Word都支持的免费软件
  14. 寒假自主学习项目一 - 链表(6、插入节点)
  15. 日拱一卒之JAVA正则
  16. 【MATLAB】基本数学操作
  17. SharePoint 2010 类似人人网站内信功能实施
  18. html5 flex布局纵向,html最新的flex布局
  19. 对B/S架构和C/S架构的分析
  20. 基于android的防抖音直播,uniapp 仿火山 / 抖音短视频|uni-App+vue 直播实例

热门文章

  1. [zt]OpenCV2.1.0的安装
  2. 快速计算Distinct Count
  3. cookie与session以及他们的常规用途——web开发必须熟知的知识
  4. Exchange 2010 OWA更改过期密码
  5. Get Network Utilization
  6. 给Eclipse插件的View加上菜单和工具条
  7. solid 设计原则 php,面向对象设计SOLID五大原则
  8. java集合类详解_【Java入门提高篇】Day20 Java集合类详解(三)List接口
  9. 点击单选按钮 实现表格的隔行变色
  10. 在Release版本中如何关闭Debug版本中的log