zoukankan      html  css  js  c++  java
  • Python3基础 os mkdirs 创建多层文件夹

    •        Python : 3.7.0
    •          OS : Ubuntu 18.04.1 LTS
    •         IDE : PyCharm 2018.2.4
    •       Conda : 4.5.11
    •    typesetting : Markdown

    code

    coder@Ubuntu:~$ source activate py37
    (py37) coder@Ubuntu:~$ ipython
    Python 3.6.5 |Anaconda, Inc.| (default, Apr 29 2018, 16:14:56) 
    Type 'copyright', 'credits' or 'license' for more information
    IPython 6.4.0 -- An enhanced Interactive Python. Type '?' for help.
    
    In [1]: import os
    
    In [2]: os.makedirs('/home/coder/1/2/3/4')  # 如果目录已经存在则抛出异常
    
    In [3]: os.makedirs('/home/coder/1/2/3/4-1')  # 这个不算存在,可以正常运行
    
    In [4]: os.makedirs('/home/coder/1/2/3/4-1')  # 抛异常
    ---------------------------------------------------------------------------
    FileExistsError                           Traceback (most recent call last)
    <ipython-input-4-782835991ba7> in <module>()
    ----> 1 os.makedirs('/home/coder/1/2/3/4-1')  # 抛异常
    
    ~/anaconda3/lib/python3.6/os.py in makedirs(name, mode, exist_ok)
        218             return
        219     try:
    --> 220         mkdir(name, mode)
        221     except OSError:
        222         # Cannot rely on checking for EEXIST, since the operating system
    
    FileExistsError: [Errno 17] File exists: '/home/coder/1/2/3/4-1'
    
    In [5]: exit
    (py37) coder@Ubuntu:~$ source deactivate
    coder@Ubuntu:~$ 
    
    

    result

    coder@Ubuntu:~$ ls -l
    总用量 92
    drwxr-xr-x  3 coder coder  4096 10月  2 14:30 1
    drwxr-xr-x 23 coder coder  4096 9月  30 18:41 anaconda3
    drwxr-xr-x  4 coder coder  4096 10月  2 11:57 Desktop
    drwxr-xr-x  2 coder coder  4096 10月  1 01:40 Documents
    drwxr-xr-x  2 coder coder  4096 10月  1 01:40 Downloads
    -rw-r--r--  1 coder coder  8980 9月  30 17:26 examples.desktop
    -rwxrwxr-x  1 coder coder  2354 4月  28  2009 get-fonts.sh
    -rw-rw-r--  1 coder coder  1042 4月  28  2009 get-fonts.sh.zip
    drwxr-xr-x  2 coder coder  4096 10月  1 01:40 Music
    drwxr-xr-x  3 coder coder  4096 10月  2 14:22 not_exist_dir_father
    drwxr-xr-x  3 coder coder 12288 10月  1 17:38 Pictures
    drwxr-xr-x  2 coder coder  4096 10月  1 01:40 Public
    drwxr-xr-x 11 coder coder  4096 9月  30 18:51 pycharm-2018.2.4
    drwxrwxr-x  5 coder coder  4096 10月  2 12:04 PycharmProjects
    drwxr-xr-x  3 coder coder  4096 9月  30 22:09 snap
    drwxr-xr-x  2 coder coder  4096 10月  1 01:40 Templates
    drwxr-xr-x  2 coder coder  4096 9月  30 18:51 ubuntu_software
    drwxr-xr-x  2 coder coder  4096 10月  1 01:40 Videos
    coder@Ubuntu:~$ tree 1
    1
    └── 2
        └── 3
            ├── 4
            └── 4-1
    
    4 directories, 0 files
    coder@Ubuntu:~$ 
    
    

    more knowledge

    coder@Ubuntu:~$ source activate py37
    (py37) coder@Ubuntu:~$ ipython
    Python 3.6.5 |Anaconda, Inc.| (default, Apr 29 2018, 16:14:56) 
    Type 'copyright', 'credits' or 'license' for more information
    IPython 6.4.0 -- An enhanced Interactive Python. Type '?' for help.
    
    In [1]: os.makedirs('E:\a\b\c')  # 小的意外而带来的思考
    ---------------------------------------------------------------------------
    NameError                                 Traceback (most recent call last)
    <ipython-input-1-ce8df6231567> in <module>()
    ----> 1 os.makedirs('E:\a\b\c')  # 小的意外而带来的思考
    
    NameError: name 'os' is not defined
    
    In [2]: import os
    
    In [3]: os.makedirs('E:\a\b\c')  # 小的意外而带来的思考
    
    In [4]: ls -l
    总用量 92
    drwxr-xr-x 23 coder coder  4096 9月  30 18:41  anaconda3/
    drwxr-xr-x  4 coder coder  4096 10月  2 11:57  Desktop/
    drwxr-xr-x  2 coder coder  4096 10月  1 01:40  Documents/
    drwxr-xr-x  2 coder coder  4096 10月  1 01:40  Downloads/
    drwxr-xr-x  2 coder coder  4096 10月  2 14:28 'E:ac'/
    -rw-r--r--  1 coder coder  8980 9月  30 17:26  examples.desktop
    -rwxrwxr-x  1 coder coder  2354 4月  28  2009  get-fonts.sh*
    -rw-rw-r--  1 coder coder  1042 4月  28  2009  get-fonts.sh.zip
    drwxr-xr-x  2 coder coder  4096 10月  1 01:40  Music/
    drwxr-xr-x  3 coder coder  4096 10月  2 14:22  not_exist_dir_father/
    drwxr-xr-x  3 coder coder 12288 10月  1 17:38  Pictures/
    drwxr-xr-x  2 coder coder  4096 10月  1 01:40  Public/
    drwxr-xr-x 11 coder coder  4096 9月  30 18:51  pycharm-2018.2.4/
    drwxrwxr-x  5 coder coder  4096 10月  2 12:04  PycharmProjects/
    drwxr-xr-x  3 coder coder  4096 9月  30 22:09  snap/
    drwxr-xr-x  2 coder coder  4096 10月  1 01:40  Templates/
    drwxr-xr-x  2 coder coder  4096 9月  30 18:51  ubuntu_software/
    drwxr-xr-x  2 coder coder  4096 10月  1 01:40  Videos/
    
    In [5]: # drwxr-xr-x  2 coder coder  4096 10月  2 14:28 'E:ac'/
    
    In [6]: # 居然创建出了这样名字的文件夹,还没报错......
    
    In [7]: exit
    (py37) coder@Ubuntu:~$ source deactivate
    coder@Ubuntu:~$ 
    
    

    resource

    • [文档] docs.python.org/3
    • [规范] www.python.org/dev/peps/pep-0008
    • [规范] zh-google-styleguide.readthedocs.io/en/latest/google-python-styleguide/python_language_rules
    • [源码] www.python.org/downloads/source
    • [ PEP ] www.python.org/dev/peps
    • [平台] www.cnblogs.com
    • [平台] gitee.com


    Python具有开源、跨平台、解释型、交互式等特性,值得学习。
    Python的设计哲学:优雅,明确,简单。提倡用一种方法,最好是只有一种方法来做一件事。
    代码的书写要遵守规范,这样有助于沟通和理解。
    每种语言都有独特的思想,初学者需要转变思维、踏实践行、坚持积累。

  • 相关阅读:
    省市区选择器
    查找算法 分享1:顺序查找
    查找算法 分享2:折半(二分)查找
    编程实现对键盘输入的英文名句子进行加密。用加密方法为,当内容为英文字母时其在26字母中的其后三个字母代替该字母,若为其它字符时不变。
    查找算法 分享3:分块查找
    NSMutableDicitionary 的setValue和setObject的区别
    查找算法 分享4:哈希查找
    玩转博客园的5个小技巧
    WCF读书笔记安全:基础知识(身份验证、授权、传输安全)
    北京的房价
  • 原文地址:https://www.cnblogs.com/xingchuxin/p/10426350.html
Copyright © 2011-2022 走看看