Home PC Games Linux Windows Database Network Programming Server Mobile  
  Home \ Programming \ Python in os.path Magical     - VMware virtual machine to install CentOS 6.2 (Linux)

- Close and limit unused ports computer server security protection (Linux)

- Android screen rotation processing and ProgressDialog the best AsyncTask (Programming)

- Android Activity launchMode (Programming)

- MySQL multi-master-slave synchronization (Database)

- Use Ambari rapid deployment Hadoop big data environment (Server)

- Grub2: Save Your bootloader (Linux)

- Go Languages Reviews (Programming)

- CentOS6 MongoDB connection solution can not break 1000 (Database)

- The method to mount the CD under Linux (Linux)

- Docker knowledge base (Server)

- Configuring the remote Linux server SSH key authentication to automatically login in Mac OS X (Server)

- Java rewrite the hashcode method (Programming)

- SQLite (Database)

- Java reflection mechanism explained in detail and Method.invoke explanation (Programming)

- Linux System Getting Started Learning: Repair (Linux)

- Oracle 12C truncate table cascade (Database)

- Amazon EC2 server using Rsync + Inotify real-time synchronization (Server)

- How to Install Foreman under Ubuntu (Server)

- Summary of Docker mounted directory (Server)

  Python in os.path Magical
  Add Date : 2018-11-21      
  1. Basics

    When os.path set path to the file in a different environment, the role is very large, we often are in Django or Flask see its shadow, in fact, there are several commonly used methods below:

Common method of action
os.path.dirname (__ file__) Returns the current execution path python script execution (see example below), there is a fixed parameter __file__
os.path.abspath (file) returns the absolute path to a file in the current environment, where a parameter file
os.path.join (basedir, file) the file path to the path of the file where the basedir here fbasedir and file all parameters
    OK, we might look at the following example.

2. Test

    Look at the two python script file my current environment:

xpleaf @ leaf: ~ / Source_Code $ pwd
/ Home / xpleaf / Source_Code
xpleaf @ leaf: ~ / Source_Code $ ls
hello.py test_os_path.py
    hello.py there is no content will be used for testing, the main look test_os_path.py code:

import os
path1 = os.path.dirname (__ file__)
print 'The path1 is:', path1
path2 = os.path.abspath (path1)
print 'The path2 is:', path2
path3 = os.path.join (path2, 'hello.py')
print 'The path3 is:', path3
    By looking at the implementation of the following two ways, we come to a deep understanding of the role of the above three methods:

(1) by way of a relative path is performed test_os_path.py

xpleaf @ leaf: ~ / Source_Code $ python test_os_path.py
The path1 is:
The path2 is: / home / xpleaf / Source_Code
The path3 is: /home/xpleaf/Source_Code/hello.py
(2) in a manner to perform absolute path test_os_path.py

xpleaf @ leaf: ~ / Source_Code $ python /home/xpleaf/Source_Code/test_os_path.py
The path1 is: / home / xpleaf / Source_Code
The path2 is: / home / xpleaf / Source_Code
The path3 is: /home/xpleaf/Source_Code/hello.py
    Through the implementation of the above two ways of output, it is easy to see the role of the three. That in the actual development, what use is it?

3. Use os.path in the actual development

    In the actual development, we certainly want to set a path to certain files, such as Web development, for the path templates and static files and other settings, in fact, if you've used Django or Flask, you should be able to see often that in their configuration files, there os.path appears generally to use this:

(1) First get the path of the current file (such as configuration files) are located

basedir = os.path.abspath (os.path.dirname (__ file__))
Absolute path (2) to set a file

static_file_path = os.path.join (basedir, 'index.html')
    Of course, os.path usage also have a lot more, just a list of three common here, and given the general usage of the development environment, as to whether this have to use, completely depends on each person's own ideas and methods, where only for reference.
- Linux C source code (sockettype: socket descriptor determination function) (Programming)
- Iptables in Ubuntu (Linux)
- Android components series Activity (Programming)
- KVM add virtual disks (Linux)
- Linux set to select the appropriate level of security of the network according to deployment (Linux)
- 5 steps to help you become a good Docker contributors (Linux)
- Linux common network tools: traceroute routing of scanned (Linux)
- Use Docker / LXC quickly launch a desktop system (Linux)
- SUSE Linux firewall configuration notes (Linux)
- How to install Go1.5 source development environment on Mac (Server)
- Video editing captions under Linux (Linux)
- Hibernate Performance Optimization of EHCache cache (Programming)
- Parse Server supports iOS and Android push messaging (Programming)
- Mounting kit under Fedora Linux (Linux)
- Download Manager uGet 2.0 installed in Debian, Ubuntu, Linux Mint and Fedora (Linux)
- CentOS 6 compiling httpd-2.4.10 (Server)
- About Linux backdoor (Linux)
- How to Use Nmap security scanner tool on Linux (Linux)
- Linux CentOS configuration SVN + SVN hook (Server)
- MySQL IO SSD attempt at optimization (Database)
  CopyRight 2002-2022 newfreesoft.com, All Rights Reserved.