語法:
os.chdir(path)
參數
- path − 更改到新位置的目錄的完整路徑。
不返回任何值。沒有找到指定的路徑,會拋出FileNotFoundError
舉例:
我在跟目錄(/)的狀態下, 使用python3 絕對路徑/xxxx.py後, 要在運行別隻py檔案,
使用下方兩隻py檔來做演示,路徑都在/home/ubuntu/Dev
檔名:chdir.py
#!/usr/bin/python
# -*- coding: UTF-8 -*-
import os, sys
path = "/home/ubuntu/Dev"
# 查看當前工作目錄
retval = os.getcwd()
print("當前工作目錄:%s" % retval)
# 修改當前工作目錄
os.chdir( path )
# 查看修改後的工作目錄
retval = os.getcwd()
print("目錄修改成功:%s" % retval)
# 接著要運行的指令
os.system("python3 pping.py")
檔名:pping.py
import os
a=os.system("ping 192.168.1.101") #使用a接收返回值
print(a)
以下是在終端機執行過程:
ubuntu@ubuntu:~/Dev$ cd ~
ubuntu@ubuntu:~$ python3 /home/ubuntu/Dev/chdir.py
當前工作目錄:/home/ubuntu
目錄修改成功:/home/ubuntu/Dev
PING 192.168.1.101 (192.168.1.101) 56(84) bytes of data.
64 bytes from 192.168.1.101: icmp_seq=1 ttl=128 time=5.19 ms
由此可見os.getcwd是獲得終端機當下在運行python時的路徑, 而os.chdir是會修改為新的工作路徑, 若沒有修改的話, 是沒辦法透過os.system來運行pping.py的, 會出現找不到檔案的error。