Hướng dẫn root insert python - root chèn python

Làm thế nào để đặt thư mục làm việc hiện tại trong Python?

Nội phân Chính showShow

  • Giới thiệu¶
  • Phân phối nguồn dựa trên Distutils
  • Xây dựng và cài đặt tiêu chuẩn
  • Biến thể nền tảng
  • Chia công việc lên
  • Cách xây dựng hoạt động lor
  • Cách cài đặt hoạt động lor
  • Cài đặt thay thế
  • Cài đặt thay thế: Sơ đồ người dùng
  • Cài đặt thay thế: Chương trình gia đình
  • Cài đặt thay thế: UNIX [sơ đồ tiền tố] ¶
  • Cài đặt thay thế: Windows [sơ đồ tiền tố] ¶
  • Cài đặt tùy chỉnh¶
  • Sửa đổi đường dẫn tìm kiếm Python từ
  • Các tệp cấu hình Distutils
  • Vị trí và tên của các tệp cấu hình
  • Cú pháp của các tệp cấu hình
  • Xây dựng phần mở rộng: Mẹo và Thủ thuật
  • Điều chỉnh cờ trình biên dịch/liên kết
  • Sử dụng trình biên dịch không phải Microsoft trên Windows¶

Martineau

Huy hiệu vàng 115K2525 gold badges160 silver badges284 bronze badges

Đã hỏi ngày 27 tháng 11 năm 2009 lúc 21:53Nov 27, 2009 at 21:53

0

Hãy thử

import os
path="/Users/HOME/Desktop/Addl Work/TimeSeries-Done"
os.chdir[path]
1

os.chdir[path]

& nbsp; Tính khả dụng: UNIX, Windows.

Alex l

8.3764 Huy hiệu vàng46 Huy hiệu bạc75 Huy hiệu Đồng4 gold badges46 silver badges75 bronze badges

Đã trả lời ngày 27 tháng 11 năm 2009 lúc 21:59Nov 27, 2009 at 21:59

Mark Byersmark ByersMark Byers

781K184 Huy hiệu vàng1552 Huy hiệu bạc1440 Huy hiệu đồng184 gold badges1552 silver badges1440 bronze badges

3

Có lẽ đây là những gì bạn đang tìm kiếm:

import os
os.chdir[default_path]

Đã trả lời ngày 27 tháng 11 năm 2009 lúc 22:00Nov 27, 2009 at 22:00

UnutbuUnutbuunutbu

798K171 Huy hiệu vàng1721 Huy hiệu bạc1623 Huy hiệu Đồng171 gold badges1721 silver badges1623 bronze badges

import os
print os.getcwd[]  # Prints the current working directory

Để đặt thư mục làm việc:

os.chdir['c:\\Users\\uname\\desktop\\python']  # Provide the new path here

Đã trả lời ngày 24 tháng 1 năm 2016 lúc 3:41Jan 24, 2016 at 3:41

Dineshdineshdinesh

9436 Huy hiệu bạc2 Huy hiệu Đồng6 silver badges2 bronze badges

5

Nó cũng hoạt động cho MacMac also

import os
path="/Users/HOME/Desktop/Addl Work/TimeSeries-Done"
os.chdir[path]

Để kiểm tra thư mục làm việc

os.getcwd[]

Đã trả lời ngày 31 tháng 8 năm 2017 lúc 7:14Aug 31, 2017 at 7:14

PRITAMJPRITAMJPritamJ

3194 Huy hiệu bạc10 Huy hiệu đồng4 silver badges10 bronze badges

3

những người sử dụng gói gấu trúc

import os
import pandas as pd

tar = os.chdir[''] # do not mention file name here
print os.getcwd[]# to print the path name in CLI

Cú pháp sau được sử dụng để nhập tệp trong Python CLI

dataset[*just a variable] = pd.read_csv['new.csv']

Vikrant

5.35017 Huy hiệu vàng48 Huy hiệu bạc72 Huy hiệu đồng17 gold badges48 silver badges72 bronze badges

Đã trả lời ngày 22 tháng 12 năm 2016 lúc 6:12Dec 22, 2016 at 6:12

user3521180user3521180user3521180

8922 Huy hiệu vàng15 Huy hiệu bạc38 Huy hiệu đồng2 gold badges15 silver badges38 bronze badges

2

Tác giả

Greg Ward

Ghi chú

Toàn bộ gói

import os
path="/Users/HOME/Desktop/Addl Work/TimeSeries-Done"
os.chdir[path]
2 đã được không dùng nữa và sẽ bị xóa trong Python 3.12. Tài liệu này chỉ được giữ lại làm tài liệu tham khảo và sẽ được xóa với gói. Xem những gì mà mục nhập mới để biết thêm thông tin.What’s New entry for more information.

Xem thêm

Cài đặt các mô -đun Python

Tài liệu cài đặt mô -đun cập nhật. Để sử dụng Python thường xuyên, bạn gần như chắc chắn muốn tài liệu đó hơn là cái này.

Ghi chú

Toàn bộ gói

import os
path="/Users/HOME/Desktop/Addl Work/TimeSeries-Done"
os.chdir[path]
2 đã được không dùng nữa và sẽ bị xóa trong Python 3.12. Tài liệu này chỉ được giữ lại làm tài liệu tham khảo và sẽ được xóa với gói. Xem những gì mà mục nhập mới để biết thêm thông tin.

Giới thiệu¶

Xem thêm

Cài đặt các mô -đun Python

Tài liệu cài đặt mô -đun cập nhật. Để sử dụng Python thường xuyên, bạn gần như chắc chắn muốn tài liệu đó hơn là cái này.Installing Python Modules and Distributing Python Modules for more details.

Hướng dẫn này chỉ bao gồm các công cụ cơ bản để xây dựng và phân phối các tiện ích mở rộng được cung cấp như một phần của phiên bản Python này. Các công cụ của bên thứ ba cung cấp dễ dàng hơn để sử dụng và các lựa chọn thay thế an toàn hơn. Tham khảo phần Khuyến nghị nhanh trong Hướng dẫn sử dụng bao bì Python để biết thêm thông tin.

Phân phối nguồn dựa trên Distutils

Trong Python 2.0, API

import os
path="/Users/HOME/Desktop/Addl Work/TimeSeries-Done"
os.chdir[path]
2 lần đầu tiên được thêm vào thư viện tiêu chuẩn. Điều này đã cung cấp cho người bảo trì Linux một cách tiêu chuẩn để chuyển đổi các dự án Python thành các gói phân phối Linux và quản trị viên hệ thống một cách tiêu chuẩn để cài đặt chúng trực tiếp lên các hệ thống đích.

Trong nhiều năm kể từ khi Python 2.0 được phát hành, việc kết hợp chặt chẽ hệ thống xây dựng và trình cài đặt gói với chu kỳ phát hành thời gian chạy ngôn ngữ đã trở nên có vấn đề và hiện tại nên sử dụng trình cài đặt gói

import os
path="/Users/HOME/Desktop/Addl Work/TimeSeries-Done"
os.chdir[path]
4 và hệ thống xây dựng
import os
path="/Users/HOME/Desktop/Addl Work/TimeSeries-Done"
os.chdir[path]
5, thay vào đó hơn là sử dụng
import os
path="/Users/HOME/Desktop/Addl Work/TimeSeries-Done"
os.chdir[path]
2 trực tiếp.

Xem Cài đặt các mô -đun Python và phân phối các mô -đun Python để biết thêm chi tiết.

Xây dựng và cài đặt tiêu chuẩn

Tài liệu di sản này chỉ được giữ lại cho đến khi chúng tôi tự tin rằng tài liệu

import os
path="/Users/HOME/Desktop/Addl Work/TimeSeries-Done"
os.chdir[path]
5 bao gồm mọi thứ cần thiết.Distutils based source distributions, building and installing a module distribution using the Distutils is usually one simple command to run from a terminal:

Biến thể nền tảng

Bạn phải luôn luôn chạy lệnh thiết lập từ thư mục gốc phân phối, tức là thư mục con cấp cao nhất mà phân phối nguồn mô-đun giải nén vào. Ví dụ: nếu bạn chỉ tải xuống một phân phối nguồn mô -đun

import os
path="/Users/HOME/Desktop/Addl Work/TimeSeries-Done"
os.chdir[path]
8 lên hệ thống UNIX, thì điều bình thường cần làm là:

gunzip -c foo-1.0.tar.gz | tar xf -    # unpacks into directory foo-1.0
cd foo-1.0
python setup.py install

Trên Windows, bạn có thể tải xuống

os.getcwd[]
6. Nếu bạn đã tải tệp lưu trữ xuống
os.getcwd[]
7, thì nó sẽ giải nén vào
os.getcwd[]
8; Bạn có thể sử dụng Trình điều khiển lưu trữ với giao diện người dùng đồ họa [như Winzip] hoặc công cụ dòng lệnh [như Unzip hoặc Pkunzip] để giải nén kho lưu trữ. Sau đó, mở cửa sổ nhắc lệnh và chạy:unzip or pkunzip] to unpack the archive. Then, open a command prompt window and run:

cd c:\Temp\foo-1.0
python setup.py install

Chia công việc lên

Chạy

os.getcwd[]
9 xây dựng và cài đặt tất cả các mô -đun trong một lần chạy. Nếu bạn thích làm việc tăng dần, đặc biệt là hữu ích nếu bạn muốn tùy chỉnh quy trình xây dựng hoặc nếu mọi thứ đang sai, bạn có thể sử dụng tập lệnh thiết lập để làm một việc tại một thời điểm. Điều này đặc biệt hữu ích khi việc xây dựng và cài đặt sẽ được thực hiện bởi những người dùng khác nhau, ví dụ, bạn có thể muốn xây dựng một phân phối mô-đun và trao nó cho quản trị viên hệ thống để cài đặt [hoặc tự làm, với các đặc quyền siêu người dùng].

Ví dụ: bạn có thể xây dựng mọi thứ trong một bước và sau đó cài đặt mọi thứ trong bước thứ hai, bằng cách gọi tập lệnh thiết lập hai lần:

import os
os.chdir[default_path]
0

Nếu bạn làm điều này, bạn sẽ nhận thấy rằng việc chạy lệnh cài đặt trước tiên chạy lệnh build, trong trường hợp này, thông báo nhanh chóng không có gì để làm, vì mọi thứ trong thư mục

import os
import pandas as pd

tar = os.chdir[''] # do not mention file name here
print os.getcwd[]# to print the path name in CLI
0 đều được cập nhật.install command first runs the build command, which—in this case—quickly notices that it has nothing to do, since everything in the
import os
import pandas as pd

tar = os.chdir[''] # do not mention file name here
print os.getcwd[]# to print the path name in CLI
0 directory is up-to-date.

Bạn có thể không cần khả năng này để phá vỡ mọi thứ thường xuyên nếu tất cả những gì bạn làm là cài đặt các mô -đun được tải xuống ngoài mạng, nhưng nó rất tiện dụng cho các nhiệm vụ nâng cao hơn. Nếu bạn nhận được phân phối các mô -đun và tiện ích mở rộng Python của riêng mình, bạn sẽ tự mình chạy rất nhiều lệnh distututils riêng lẻ.

Cách xây dựng hoạt động lor

Theo ngụ ý ở trên, lệnh build có trách nhiệm đặt các tệp để cài đặt vào thư mục xây dựng. Theo mặc định, đây là

import os
import pandas as pd

tar = os.chdir[''] # do not mention file name here
print os.getcwd[]# to print the path name in CLI
0 dưới gốc phân phối; Nếu bạn quá quan tâm đến tốc độ hoặc muốn giữ nguyên nguyên nguồn, bạn có thể thay đổi thư mục xây dựng với tùy chọn
import os
import pandas as pd

tar = os.chdir[''] # do not mention file name here
print os.getcwd[]# to print the path name in CLI
2. Ví dụ:build command is responsible for putting the files to install into a build directory. By default, this is
import os
import pandas as pd

tar = os.chdir[''] # do not mention file name here
print os.getcwd[]# to print the path name in CLI
0 under the distribution root; if you’re excessively concerned with speed, or want to keep the source tree pristine, you can change the build directory with the
import os
import pandas as pd

tar = os.chdir[''] # do not mention file name here
print os.getcwd[]# to print the path name in CLI
2 option. For example:

import os
os.chdir[default_path]
1

.Distutils Configuration Files.] Normally, this isn’t necessary.

Bố cục mặc định cho cây xây dựng như sau:

import os
os.chdir[default_path]
2

trong đó

import os
import pandas as pd

tar = os.chdir[''] # do not mention file name here
print os.getcwd[]# to print the path name in CLI
3 mở rộng sang một mô tả ngắn gọn về nền tảng HĐH/Phần cứng hiện tại và phiên bản Python. Mẫu đầu tiên, chỉ với một thư mục
import os
import pandas as pd

tar = os.chdir[''] # do not mention file name here
print os.getcwd[]# to print the path name in CLI
4, được sử dụng cho các bản phân phối mô -đun thuần túy của Hồi giáo, đó là các phân phối mô -đun chỉ bao gồm các mô -đun python thuần túy. Nếu một phân phối mô -đun chứa bất kỳ phần mở rộng nào [các mô -đun được viết bằng C/C ++], thì biểu mẫu thứ hai, với hai thư mục
import os
import pandas as pd

tar = os.chdir[''] # do not mention file name here
print os.getcwd[]# to print the path name in CLI
3, được sử dụng. Trong trường hợp đó, thư mục
import os
import pandas as pd

tar = os.chdir[''] # do not mention file name here
print os.getcwd[]# to print the path name in CLI
6 giữ các tệp tạm thời được tạo bởi quy trình biên dịch/liên kết mà không thực sự được cài đặt. Trong cả hai trường hợp, thư mục
import os
import pandas as pd

tar = os.chdir[''] # do not mention file name here
print os.getcwd[]# to print the path name in CLI
4 [hoặc
import os
import pandas as pd

tar = os.chdir[''] # do not mention file name here
print os.getcwd[]# to print the path name in CLI
8] chứa tất cả các mô -đun Python [Python và phần mở rộng thuần túy] sẽ được cài đặt.

Trong tương lai, nhiều thư mục sẽ được thêm vào để xử lý các tập lệnh Python, tài liệu, thực thi nhị phân và bất cứ điều gì khác là cần thiết để xử lý công việc cài đặt các mô -đun và ứng dụng Python.

Cách cài đặt hoạt động lor

Sau khi lệnh build chạy [cho dù bạn chạy nó một cách rõ ràng hay lệnh cài đặt thực hiện nó cho bạn], công việc của lệnh cài đặt tương đối đơn giản: tất cả những gì nó phải làm là sao chép mọi thứ theo

import os
import pandas as pd

tar = os.chdir[''] # do not mention file name here
print os.getcwd[]# to print the path name in CLI
9 [hoặc
dataset[*just a variable] = pd.read_csv['new.csv']
0] để cài đặt đã chọn của bạn danh mục.build command runs [whether you run it explicitly, or the install command does it for you], the work of the install command is relatively simple: all it has to do is copy everything under
import os
import pandas as pd

tar = os.chdir[''] # do not mention file name here
print os.getcwd[]# to print the path name in CLI
9 [or
dataset[*just a variable] = pd.read_csv['new.csv']
0] to your chosen installation directory.

Nếu bạn không chọn một thư mục cài đặt, tức là, nếu bạn chỉ chạy ____ 71, thì lệnh cài đặt cài đặt vào vị trí tiêu chuẩn cho các mô-đun Python của bên thứ ba. Vị trí này thay đổi theo nền tảng và cách bạn xây dựng/cài đặt chính Python. Trên Unix [và MacOS, cũng dựa trên UNIX], nó cũng phụ thuộc vào việc phân phối mô-đun được cài đặt có phải là Python tinh khiết hay chứa các tiện ích mở rộng [không phải là PURE hay không]:install command installs to the standard location for third-party Python modules. This location varies by platform and by how you built/installed Python itself. On Unix [and macOS, which is also Unix-based], it also depends on whether the module distribution being installed is pure Python or contains extensions [“non-pure”]:

Nền tảng

Vị trí cài đặt tiêu chuẩn

Giá trị mặc định

Ghi chú

UNIX [tinh khiết]

dataset[*just a variable] = pd.read_csv['new.csv']
2

dataset[*just a variable] = pd.read_csv['new.csv']
3

[1]

UNIX [không pure]

dataset[*just a variable] = pd.read_csv['new.csv']
4

dataset[*just a variable] = pd.read_csv['new.csv']
3

[1]

các cửa sổ

dataset[*just a variable] = pd.read_csv['new.csv']
6

dataset[*just a variable] = pd.read_csv['new.csv']
7

[2]

Notes:

  1. Hầu hết các bản phân phối Linux bao gồm Python là một phần tiêu chuẩn của hệ thống, do đó

    dataset[*just a variable] = pd.read_csv['new.csv']
    
    8 và
    dataset[*just a variable] = pd.read_csv['new.csv']
    
    9 thường là cả
    gunzip -c foo-1.0.tar.gz | tar xf -    # unpacks into directory foo-1.0
    cd foo-1.0
    python setup.py install
    
    0 trên Linux. Nếu bạn tự xây dựng Python trên Linux [hoặc bất kỳ hệ thống giống như UNIX nào], mặc định
    dataset[*just a variable] = pd.read_csv['new.csv']
    
    8 và
    dataset[*just a variable] = pd.read_csv['new.csv']
    
    9 là
    gunzip -c foo-1.0.tar.gz | tar xf -    # unpacks into directory foo-1.0
    cd foo-1.0
    python setup.py install
    
    3.

  2. Thư mục cài đặt mặc định trên Windows là

    gunzip -c foo-1.0.tar.gz | tar xf -    # unpacks into directory foo-1.0
    cd foo-1.0
    python setup.py install
    
    4 theo Python 1.6A1, 1.5.2 và trước đó.

dataset[*just a variable] = pd.read_csv['new.csv']
8 và
dataset[*just a variable] = pd.read_csv['new.csv']
9 là viết tắt của các thư mục mà Python được cài đặt và nơi nó tìm thấy các thư viện của nó vào thời gian chạy. Chúng luôn giống nhau trong các cửa sổ, và rất thường giống nhau dưới Unix và MacOS. Bạn có thể tìm hiểu những gì cài đặt Python của bạn sử dụng cho
dataset[*just a variable] = pd.read_csv['new.csv']
8 và
dataset[*just a variable] = pd.read_csv['new.csv']
9 bằng cách chạy Python ở chế độ tương tác và gõ một vài lệnh đơn giản. Trong Unix, chỉ cần nhập
gunzip -c foo-1.0.tar.gz | tar xf -    # unpacks into directory foo-1.0
cd foo-1.0
python setup.py install
9 tại dấu nhắc Shell. Trong Windows, chọn. Khi trình thông dịch được bắt đầu, bạn nhập mã python tại dấu nhắc. Ví dụ: trên hệ thống Linux của tôi, tôi nhập ba câu lệnh Python được hiển thị bên dưới và nhận đầu ra như được hiển thị, để tìm hiểu
dataset[*just a variable] = pd.read_csv['new.csv']
8 và
dataset[*just a variable] = pd.read_csv['new.csv']
9 của tôi:

import os
os.chdir[default_path]
3

Một vài người giữ chỗ khác được sử dụng trong tài liệu này:

cd c:\Temp\foo-1.0
python setup.py install
2 là viết tắt của phiên bản Python, ví dụ
cd c:\Temp\foo-1.0
python setup.py install
3;
cd c:\Temp\foo-1.0
python setup.py install
4 sẽ được thay thế bằng giá trị của
cd c:\Temp\foo-1.0
python setup.py install
5 hoặc chuỗi trống cho các nền tảng mà không xác định cờ ABI;
cd c:\Temp\foo-1.0
python setup.py install
6 sẽ được thay thế bằng tên của phân phối mô -đun được cài đặt. Chấm và viết hoa là quan trọng trong các con đường; Ví dụ: một giá trị sử dụng
cd c:\Temp\foo-1.0
python setup.py install
7 trên Unix thường sẽ sử dụng
cd c:\Temp\foo-1.0
python setup.py install
8 trên Windows.

Nếu bạn không muốn cài đặt các mô -đun vào vị trí tiêu chuẩn hoặc nếu bạn không có quyền viết ở đó, thì bạn cần đọc về các cài đặt thay thế trong phần cài đặt thay thế. Nếu bạn muốn tùy chỉnh các thư mục cài đặt của mình nhiều hơn, hãy xem phần Cài đặt tùy chỉnh trên cài đặt tùy chỉnh.Alternate Installation. If you want to customize your installation directories more heavily, see section Custom Installation on custom installations.

Cài đặt thay thế

Thông thường, cần thiết hoặc mong muốn cài đặt các mô-đun vào một vị trí khác với vị trí tiêu chuẩn cho các mô-đun Python của bên thứ ba. Ví dụ: trên một hệ thống UNIX, bạn có thể không được phép ghi vào thư mục mô-đun của bên thứ ba tiêu chuẩn. Hoặc bạn có thể muốn thử một mô -đun trước khi biến nó thành một phần tiêu chuẩn của cài đặt Python cục bộ của bạn. Điều này đặc biệt đúng khi nâng cấp phân phối đã có: bạn muốn đảm bảo cơ sở các tập lệnh hiện tại của bạn vẫn hoạt động với phiên bản mới trước khi thực sự nâng cấp.

Lệnh cài đặt Distutils được thiết kế để tạo các phân phối mô -đun cài đặt cho một vị trí thay thế đơn giản và không đau. Ý tưởng cơ bản là bạn cung cấp một thư mục cơ sở để cài đặt và lệnh Cài đặt chọn một bộ thư mục [được gọi là sơ đồ cài đặt] trong thư mục cơ sở này để cài đặt tệp. Các chi tiết khác nhau giữa các nền tảng, vì vậy hãy đọc bất kỳ phần nào sau đây áp dụng cho bạn.install command is designed to make installing module distributions to an alternate location simple and painless. The basic idea is that you supply a base directory for the installation, and the install command picks a set of directories [called an installation scheme] under this base directory in which to install files. The details differ across platforms, so read whichever of the following sections applies to you.

Lưu ý rằng các sơ đồ cài đặt thay thế khác nhau là loại trừ lẫn nhau: bạn có thể vượt qua

cd c:\Temp\foo-1.0
python setup.py install
9 hoặc
import os
os.chdir[default_path]
00 hoặc
import os
os.chdir[default_path]
01 và
import os
os.chdir[default_path]
02 hoặc
import os
os.chdir[default_path]
03 và
import os
os.chdir[default_path]
04, nhưng bạn có thể trộn lẫn từ các nhóm này.

Cài đặt thay thế: Sơ đồ người dùng

Sơ đồ này được thiết kế để trở thành giải pháp thuận tiện nhất cho người dùng không có quyền viết cho thư mục gói trang web toàn cầu hoặc không muốn cài đặt vào đó. Nó được kích hoạt với một tùy chọn đơn giản:

import os
os.chdir[default_path]
4

Các tệp sẽ được cài đặt vào các thư mục con của

import os
os.chdir[default_path]
05 [được viết là
import os
os.chdir[default_path]
06 sau đây]. Sơ đồ này cài đặt các mô -đun Python thuần túy và các mô -đun mở rộng ở cùng một vị trí [còn được gọi là
import os
os.chdir[default_path]
07]. Dưới đây là các giá trị cho Unix, bao gồm cả macOS:

Loại file

Thư mục cài đặt

Mô -đun

import os
os.chdir[default_path]
08

kịch bản

import os
os.chdir[default_path]
09

dữ liệu

import os
os.chdir[default_path]
06

C tiêu đề

import os
os.chdir[default_path]
11

Và đây là các giá trị được sử dụng trên Windows:

Loại file

Thư mục cài đặt

Mô -đun

import os
os.chdir[default_path]
12

kịch bản

import os
os.chdir[default_path]
13

dữ liệu

import os
os.chdir[default_path]
06

C tiêu đề

import os
os.chdir[default_path]
15

Và đây là các giá trị được sử dụng trên Windows:

Ưu điểm của việc sử dụng sơ đồ này so với các kế hoạch khác được mô tả dưới đây là thư mục gói trang web người dùng nằm trong các điều kiện bình thường luôn được bao gồm trong

import os
os.chdir[default_path]
16 [xem
import os
os.chdir[default_path]
17 để biết thêm thông tin], có nghĩa là không có bước bổ sung để thực hiện sau khi chạy
os.getcwd[]
2 tập lệnh để hoàn thiện cài đặt.build_ext command also has a
cd c:\Temp\foo-1.0
python setup.py install
9 option to add
import os
os.chdir[default_path]
20 to the compiler search path for header files and
import os
os.chdir[default_path]
21 to the compiler search path for libraries as well as to the runtime search path for shared C libraries [rpath].

Lệnh build_ext cũng có tùy chọn
cd c:\Temp\foo-1.0
python setup.py install
9 để thêm
import os
os.chdir[default_path]
20 vào đường dẫn tìm kiếm trình biên dịch cho các tệp tiêu đề và
import os
os.chdir[default_path]
21 vào đường dẫn tìm kiếm trình biên dịch cho các thư viện cũng như đường dẫn tìm kiếm thời gian chạy cho thư viện C được chia sẻ [RPATH].

Cài đặt thay thế: Chương trình gia đình

Ý tưởng đằng sau chương trình nhà của người Viking là bạn xây dựng và duy trì một bản mô -đun Python cá nhân. Kế hoạch này tên có nguồn gốc từ ý tưởng về một thư mục gia đình trên mạng trên UNIX, vì nó không phải là bất thường đối với người dùng Unix để làm cho thư mục nhà của họ có bố cục tương tự như

import os
os.chdir[default_path]
22 hoặc
import os
os.chdir[default_path]
23. Sơ đồ này có thể được sử dụng bởi bất kỳ ai, bất kể hệ điều hành mà họ đang cài đặt.

import os
os.chdir[default_path]
5

Nơi bạn có thể cung cấp bất kỳ thư mục nào bạn thích cho tùy chọn

import os
os.chdir[default_path]
00. Trên Unix, những người đánh máy lười biếng chỉ có thể gõ một tilde [
import os
os.chdir[default_path]
25]; Lệnh cài đặt sẽ mở rộng điều này sang thư mục nhà của bạn:install command will expand this to your home directory:

import os
os.chdir[default_path]
6

Để thực hiện Python, hãy tìm các bản phân phối được cài đặt với sơ đồ này, bạn có thể phải sửa đổi đường dẫn tìm kiếm Python hoặc chỉnh sửa

import os
os.chdir[default_path]
26 [xem
import os
os.chdir[default_path]
17] để gọi
import os
os.chdir[default_path]
28 hoặc chỉnh sửa
import os
os.chdir[default_path]
16.modify Python’s search path or edit
import os
os.chdir[default_path]
26 [see
import os
os.chdir[default_path]
17] to call
import os
os.chdir[default_path]
28 or edit
import os
os.chdir[default_path]
16.

Tùy chọn

import os
os.chdir[default_path]
00 xác định thư mục cơ sở cài đặt. Các tệp được cài đặt vào các thư mục sau trong cơ sở cài đặt như sau:

Loại file

Thư mục cài đặt

Mô -đun

import os
os.chdir[default_path]
31

kịch bản

import os
os.chdir[default_path]
32

dữ liệu

import os
os.chdir[default_path]
33

C tiêu đề

import os
os.chdir[default_path]
34

.

Cài đặt thay thế: UNIX [sơ đồ tiền tố] ¶

Sơ đồ tiền tố của người Viking rất hữu ích khi bạn muốn sử dụng một bản cài đặt Python để thực hiện bản dựng/cài đặt [nghĩa là, để chạy tập lệnh thiết lập], nhưng cài đặt các mô-đun vào thư mục mô-đun bên thứ ba của bản cài đặt Python khác [hoặc một cái gì đó Trông giống như một cài đặt Python khác nhau]. Nếu điều này nghe có vẻ bất thường, thì đó là lý do tại sao người dùng và các chương trình gia đình lại xuất hiện trước đó. Tuy nhiên, có ít nhất hai trường hợp đã biết trong đó sơ đồ tiền tố sẽ hữu ích.

Đầu tiên, hãy xem xét rằng nhiều bản phân phối Linux đặt Python vào

gunzip -c foo-1.0.tar.gz | tar xf -    # unpacks into directory foo-1.0
cd foo-1.0
python setup.py install
0, thay vì truyền thống hơn
gunzip -c foo-1.0.tar.gz | tar xf -    # unpacks into directory foo-1.0
cd foo-1.0
python setup.py install
3. Điều này là hoàn toàn phù hợp, vì trong những trường hợp, Python là một phần của hệ thống, chứ không phải là một tiện ích bổ sung cục bộ. Tuy nhiên, nếu bạn đang cài đặt các mô -đun Python từ nguồn, có lẽ bạn muốn chúng đi vào
import os
os.chdir[default_path]
37 thay vì
import os
os.chdir[default_path]
38. Điều này có thể được thực hiện với

import os
os.chdir[default_path]
7

Một khả năng khác là một hệ thống tập tin mạng trong đó tên được sử dụng để ghi vào thư mục từ xa khác với tên được sử dụng để đọc nó: ví dụ: trình thông dịch Python được truy cập dưới dạng

import os
os.chdir[default_path]
39 có thể tìm kiếm các mô -đun trong
import os
os.chdir[default_path]
37, nhưng các mô -đun đó sẽ được cài đặt để nói,
import os
os.chdir[default_path]
41. Điều này có thể được thực hiện với

import os
os.chdir[default_path]
8

Trong cả hai trường hợp, tùy chọn

import os
os.chdir[default_path]
01 xác định cơ sở cài đặt và tùy chọn ____102 xác định cơ sở cài đặt dành riêng cho nền tảng, được sử dụng cho các tệp dành riêng cho nền tảng. . Các tệp được cài đặt như sau:

Loại file

Thư mục cài đặt

Mô -đun

dataset[*just a variable] = pd.read_csv['new.csv']
2

kịch bản

dataset[*just a variable] = pd.read_csv['new.csv']
4

kịch bản

import os
os.chdir[default_path]
48

dữ liệu

dataset[*just a variable] = pd.read_csv['new.csv']
8

C tiêu đề

import os
os.chdir[default_path]
50

.

Cài đặt thay thế: UNIX [sơ đồ tiền tố] ¶

Sơ đồ tiền tố của người Viking rất hữu ích khi bạn muốn sử dụng một bản cài đặt Python để thực hiện bản dựng/cài đặt [nghĩa là, để chạy tập lệnh thiết lập], nhưng cài đặt các mô-đun vào thư mục mô-đun bên thứ ba của bản cài đặt Python khác [hoặc một cái gì đó Trông giống như một cài đặt Python khác nhau]. Nếu điều này nghe có vẻ bất thường, thì đó là lý do tại sao người dùng và các chương trình gia đình lại xuất hiện trước đó. Tuy nhiên, có ít nhất hai trường hợp đã biết trong đó sơ đồ tiền tố sẽ hữu ích.

Đầu tiên, hãy xem xét rằng nhiều bản phân phối Linux đặt Python vào
gunzip -c foo-1.0.tar.gz | tar xf -    # unpacks into directory foo-1.0
cd foo-1.0
python setup.py install
0, thay vì truyền thống hơn
gunzip -c foo-1.0.tar.gz | tar xf -    # unpacks into directory foo-1.0
cd foo-1.0
python setup.py install
3. Điều này là hoàn toàn phù hợp, vì trong những trường hợp, Python là một phần của hệ thống, chứ không phải là một tiện ích bổ sung cục bộ. Tuy nhiên, nếu bạn đang cài đặt các mô -đun Python từ nguồn, có lẽ bạn muốn chúng đi vào
import os
os.chdir[default_path]
37 thay vì
import os
os.chdir[default_path]
38. Điều này có thể được thực hiện với

Một khả năng khác là một hệ thống tập tin mạng trong đó tên được sử dụng để ghi vào thư mục từ xa khác với tên được sử dụng để đọc nó: ví dụ: trình thông dịch Python được truy cập dưới dạng

import os
os.chdir[default_path]
39 có thể tìm kiếm các mô -đun trong
import os
os.chdir[default_path]
37, nhưng các mô -đun đó sẽ được cài đặt để nói,
import os
os.chdir[default_path]
41. Điều này có thể được thực hiện với

import os
os.chdir[default_path]
9

Trong cả hai trường hợp, tùy chọn

import os
os.chdir[default_path]
01 xác định cơ sở cài đặt và tùy chọn ____102 xác định cơ sở cài đặt dành riêng cho nền tảng, được sử dụng cho các tệp dành riêng cho nền tảng. . Các tệp được cài đặt như sau:

Mô -đun Python

Loại file

Thư mục cài đặt

Mô -đun

dataset[*just a variable] = pd.read_csv['new.csv']
6

kịch bản

import os
os.chdir[default_path]
66

dữ liệu

dataset[*just a variable] = pd.read_csv['new.csv']
8

C tiêu đề

import os
os.chdir[default_path]
68

Cài đặt tùy chỉnh¶

Đôi khi, các sơ đồ cài đặt thay thế được mô tả trong phần cài đặt thay thế chỉ cần don làm những gì bạn muốn. Bạn có thể muốn điều chỉnh chỉ một hoặc hai thư mục trong khi giữ mọi thứ trong cùng một thư mục cơ sở hoặc bạn có thể muốn xác định lại hoàn toàn sơ đồ cài đặt. Trong cả hai trường hợp, bạn đã tạo ra một sơ đồ cài đặt tùy chỉnh.Alternate Installation just don’t do what you want. You might want to tweak just one or two directories while keeping everything under the same base directory, or you might want to completely redefine the installation scheme. In either case, you’re creating a custom installation scheme.

Để tạo sơ đồ cài đặt tùy chỉnh, bạn bắt đầu với một trong các sơ đồ thay thế và ghi đè một số thư mục cài đặt được sử dụng cho các loại tệp khác nhau, sử dụng các tùy chọn sau:

Loại file

Tùy chọn ghi đè

Mô -đun Python

import os
os.chdir[default_path]
69

Mô -đun mở rộng

import os
os.chdir[default_path]
70

Tất cả các mô -đun

import os
os.chdir[default_path]
71

kịch bản

import os
os.chdir[default_path]
72

dữ liệu

import os
os.chdir[default_path]
73

C tiêu đề

import os
os.chdir[default_path]
74

Các tùy chọn ghi đè này có thể là tương đối, tuyệt đối hoặc được xác định rõ ràng theo một trong các thư mục cơ sở cài đặt. . được đề xuất cho các sơ đồ không tạo ra sự khác biệt giữa các mô -đun Python và Mở rộng.]

Ví dụ: giả sử bạn đã cài đặt một phân phối mô -đun vào thư mục nhà của bạn theo Unix, nhưng bạn muốn các tập lệnh được sử dụng trong

import os
os.chdir[default_path]
80 thay vì
import os
os.chdir[default_path]
81. Như bạn có thể mong đợi, bạn có thể ghi đè thư mục này với tùy chọn
import os
os.chdir[default_path]
72; Trong trường hợp này, việc cung cấp một đường dẫn tương đối có ý nghĩa nhất, sẽ được giải thích liên quan đến thư mục cơ sở cài đặt [thư mục nhà của bạn, trong trường hợp này]:

import os
print os.getcwd[]  # Prints the current working directory
0

Một ví dụ khác của Unix: Giả sử cài đặt Python của bạn đã được xây dựng và cài đặt với tiền tố là

import os
os.chdir[default_path]
83, do đó, theo một tập lệnh cài đặt tiêu chuẩn sẽ kết thúc trong
import os
os.chdir[default_path]
84. Nếu bạn muốn chúng trong
import os
os.chdir[default_path]
85 thay thế, bạn sẽ cung cấp thư mục tuyệt đối này cho tùy chọn
import os
os.chdir[default_path]
72:

import os
print os.getcwd[]  # Prints the current working directory
1

.

Nếu bạn duy trì Python trên Windows, bạn có thể muốn các mô-đun của bên thứ ba sống trong một thư mục con

dataset[*just a variable] = pd.read_csv['new.csv']
8, thay vì ngay trong chính
dataset[*just a variable] = pd.read_csv['new.csv']
8. Điều này gần như dễ dàng như tùy chỉnh thư mục cài đặt tập lệnh mà bạn chỉ cần nhớ rằng có hai loại mô -đun để lo lắng, Python và các mô -đun mở rộng, có thể thuận tiện được kiểm soát bởi một tùy chọn:

import os
print os.getcwd[]  # Prints the current working directory
2

Thư mục cài đặt được chỉ định là liên quan đến

dataset[*just a variable] = pd.read_csv['new.csv']
8. Tất nhiên, bạn cũng phải đảm bảo rằng thư mục này nằm trong đường dẫn tìm kiếm mô -đun Python, chẳng hạn như bằng cách đặt tệp
import os
os.chdir[default_path]
91 trong thư mục trang web [xem
import os
os.chdir[default_path]
17]. Xem phần Sửa đổi đường dẫn tìm kiếm Python sườn để tìm hiểu cách sửa đổi đường dẫn tìm kiếm Python.Modifying Python’s Search Path to find out how to modify Python’s search path.

Nếu bạn muốn xác định toàn bộ sơ đồ cài đặt, bạn chỉ cần cung cấp tất cả các tùy chọn thư mục cài đặt. Cách khuyến nghị để làm điều này là cung cấp các đường dẫn tương đối; Ví dụ: nếu bạn muốn duy trì tất cả các tệp liên quan đến mô-đun Python trong

gunzip -c foo-1.0.tar.gz | tar xf -    # unpacks into directory foo-1.0
cd foo-1.0
python setup.py install
9 trong thư mục nhà của bạn và bạn muốn có một thư mục riêng cho mỗi nền tảng mà bạn sử dụng thư mục nhà của mình, bạn có thể xác định sơ đồ cài đặt sau:

import os
print os.getcwd[]  # Prints the current working directory
3

hoặc, tương đương,

import os
print os.getcwd[]  # Prints the current working directory
4

import os
os.chdir[default_path]
94 không [nhất thiết] một biến môi trường.

Rõ ràng, việc chỉ định toàn bộ sơ đồ cài đặt mỗi khi bạn cài đặt phân phối mô -đun mới sẽ rất tẻ nhạt. Do đó, bạn có thể đặt các tùy chọn này vào tệp cấu hình Distutils của mình [xem phần Tệp cấu hình DisTUtils]:Distutils Configuration Files]:

import os
print os.getcwd[]  # Prints the current working directory
5

hoặc, tương đương,

import os
print os.getcwd[]  # Prints the current working directory
6

import os
os.chdir[default_path]
94 không [nhất thiết] một biến môi trường.

import os
print os.getcwd[]  # Prints the current working directory
7

Rõ ràng, việc chỉ định toàn bộ sơ đồ cài đặt mỗi khi bạn cài đặt phân phối mô -đun mới sẽ rất tẻ nhạt. Do đó, bạn có thể đặt các tùy chọn này vào tệp cấu hình Distutils của mình [xem phần Tệp cấu hình DisTUtils]:

Lưu ý rằng hai cái này không tương đương nếu bạn cung cấp một thư mục cơ sở cài đặt khác khi bạn chạy tập lệnh thiết lập. Ví dụ,Distutils Configuration Files for details.

Ghi chú

Khi một môi trường ảo được kích hoạt, mọi tùy chọn thay đổi đường dẫn cài đặt sẽ bị bỏ qua từ tất cả các tệp cấu hình Distutils để ngăn chặn cài đặt các dự án bên ngoài môi trường ảo.virtual environment is activated, any options that change the installation path will be ignored from all distutils configuration files to prevent inadvertently installing projects outside of the virtual environment.

Sửa đổi đường dẫn tìm kiếm Python từ

Khi trình thông dịch Python thực thi câu lệnh

import os
print os.getcwd[]  # Prints the current working directory
01, nó sẽ tìm kiếm cả mã Python và các mô -đun mở rộng dọc theo đường dẫn tìm kiếm. Một giá trị mặc định cho đường dẫn được cấu hình vào nhị phân Python khi trình thông dịch được xây dựng. Bạn có thể xác định đường dẫn bằng cách nhập mô -đun
import os
print os.getcwd[]  # Prints the current working directory
02 và in giá trị của
import os
os.chdir[default_path]
16.

import os
print os.getcwd[]  # Prints the current working directory
8

Chuỗi null trong

import os
os.chdir[default_path]
16 đại diện cho thư mục làm việc hiện tại.

Công ước dự kiến ​​cho các gói được cài đặt cục bộ là đưa chúng vào thư mục

import os
print os.getcwd[]  # Prints the current working directory
05, nhưng bạn có thể muốn cài đặt các mô -đun Python vào một số thư mục tùy ý. Ví dụ: trang web của bạn có thể có quy ước giữ tất cả các phần mềm liên quan đến máy chủ web theo
import os
print os.getcwd[]  # Prints the current working directory
06. Các mô-đun Python bổ sung sau đó có thể thuộc về
import os
print os.getcwd[]  # Prints the current working directory
07 và để nhập chúng, thư mục này phải được thêm vào
import os
os.chdir[default_path]
16. Có một số cách khác nhau để thêm thư mục.

Cách thuận tiện nhất là thêm một tệp cấu hình đường dẫn vào một thư mục mà trên đường dẫn của Python, thường là vào thư mục

import os
print os.getcwd[]  # Prints the current working directory
09. Các tệp cấu hình đường dẫn có phần mở rộng
import os
os.chdir[default_path]
91 và mỗi dòng phải chứa một đường dẫn duy nhất được nối với
import os
os.chdir[default_path]
16. .

Các đường dẫn có thể là tuyệt đối hoặc tương đối, trong trường hợp đó chúng liên quan đến thư mục chứa tệp

import os
os.chdir[default_path]
91. Xem tài liệu của mô -đun
import os
os.chdir[default_path]
17 để biết thêm thông tin.

Một cách ít thuận tiện hơn là chỉnh sửa tệp

import os
print os.getcwd[]  # Prints the current working directory
15 trong thư viện tiêu chuẩn Python, và sửa đổi
import os
os.chdir[default_path]
16.
import os
print os.getcwd[]  # Prints the current working directory
15 được tự động nhập khi trình thông dịch Python được thực thi, trừ khi công tắc
import os
print os.getcwd[]  # Prints the current working directory
18 được cung cấp để đàn áp hành vi này. Vì vậy, bạn có thể chỉ cần chỉnh sửa
import os
print os.getcwd[]  # Prints the current working directory
15 và thêm hai dòng vào đó:

import os
print os.getcwd[]  # Prints the current working directory
9

Tuy nhiên, nếu bạn cài đặt lại cùng một phiên bản chính của Python [có lẽ khi nâng cấp từ 2.2 lên 2.2.2, chẳng hạn]

import os
print os.getcwd[]  # Prints the current working directory
15 sẽ bị ghi đè bởi phiên bản chứng khoán. Bạn phải nhớ rằng nó đã được sửa đổi và lưu một bản sao trước khi cài đặt.

Có hai biến môi trường có thể sửa đổi

import os
os.chdir[default_path]
16.
import os
print os.getcwd[]  # Prints the current working directory
22 đặt giá trị thay thế cho tiền tố của cài đặt Python. Ví dụ: nếu
import os
print os.getcwd[]  # Prints the current working directory
22 được đặt thành
import os
print os.getcwd[]  # Prints the current working directory
07, đường dẫn tìm kiếm sẽ được đặt thành
import os
print os.getcwd[]  # Prints the current working directory
25.
import os
print os.getcwd[]  # Prints the current working directory
22 sets an alternate value for the prefix of the Python installation. For example, if
import os
print os.getcwd[]  # Prints the current working directory
22 is set to
import os
print os.getcwd[]  # Prints the current working directory
07, the search path will be set to
import os
print os.getcwd[]  # Prints the current working directory
25.

Biến

import os
print os.getcwd[]  # Prints the current working directory
26 có thể được đặt thành danh sách các đường dẫn sẽ được thêm vào đầu
import os
os.chdir[default_path]
16. Ví dụ: nếu
import os
print os.getcwd[]  # Prints the current working directory
26 được đặt thành
import os
print os.getcwd[]  # Prints the current working directory
29, đường dẫn tìm kiếm sẽ bắt đầu bằng
import os
print os.getcwd[]  # Prints the current working directory
30. [Lưu ý rằng các thư mục phải tồn tại để được thêm vào
import os
os.chdir[default_path]
16; Mô -đun
import os
os.chdir[default_path]
17 loại bỏ các đường dẫn không tồn tại.]
import os
print os.getcwd[]  # Prints the current working directory
26 variable can be set to a list of paths that will be added to the beginning of
import os
os.chdir[default_path]
16. For example, if
import os
print os.getcwd[]  # Prints the current working directory
26 is set to
import os
print os.getcwd[]  # Prints the current working directory
29, the search path will begin with
import os
print os.getcwd[]  # Prints the current working directory
30. [Note that directories must exist in order to be added to
import os
os.chdir[default_path]
16; the
import os
os.chdir[default_path]
17 module removes paths that don’t exist.]

Cuối cùng,

import os
os.chdir[default_path]
16 chỉ là một danh sách Python thông thường, vì vậy bất kỳ ứng dụng Python nào cũng có thể sửa đổi nó bằng cách thêm hoặc xóa các mục.

Các tệp cấu hình Distutils

Như đã đề cập ở trên, bạn có thể sử dụng các tệp cấu hình Distutils để ghi lại tùy chọn cá nhân hoặc trang web cho bất kỳ tùy chọn Distutils nào. Đó là, bất kỳ tùy chọn nào cho bất kỳ lệnh nào cũng có thể được lưu trữ trong một trong hai hoặc ba [tùy thuộc vào nền tảng của bạn] các tệp cấu hình, sẽ được tư vấn trước khi dòng lệnh được phân tích cú pháp. Điều này có nghĩa là các tệp cấu hình sẽ ghi đè các giá trị mặc định và dòng lệnh sẽ lần lượt ghi đè các tệp cấu hình. Hơn nữa, nếu áp dụng nhiều tệp cấu hình, các giá trị từ các tệp trước đó đã bị ghi đè bởi các tệp sau này.

Vị trí và tên của các tệp cấu hình

Tên và vị trí của các tệp cấu hình thay đổi một chút trên các nền tảng. Trên Unix và MacOS, ba tệp cấu hình [theo thứ tự chúng được xử lý] là:

Loại file

Vị trí và tên tệp

Ghi chú

hệ thống

import os
print os.getcwd[]  # Prints the current working directory
34

[1]

riêng tư

import os
print os.getcwd[]  # Prints the current working directory
35

[2]

địa phương

import os
print os.getcwd[]  # Prints the current working directory
36

[3]

Và trên Windows, các tệp cấu hình là:

Loại file

Vị trí và tên tệp

Ghi chú

hệ thống

import os
print os.getcwd[]  # Prints the current working directory
37

[4]

riêng tư

import os
print os.getcwd[]  # Prints the current working directory
38

[5]

địa phương

import os
print os.getcwd[]  # Prints the current working directory
36

[3]

Và trên Windows, các tệp cấu hình là:

Notes:

  1. Trên tất cả các nền tảng, tệp cá nhân của người Viking có thể bị vô hiệu hóa tạm thời bằng cách chuyển tùy chọn của người dùng không phải là người dùng.

  2. Trên Unix, nếu biến môi trường

    import os
    print os.getcwd[]  # Prints the current working directory
    
    41 không được xác định, thư mục nhà của người dùng sẽ được xác định với hàm
    import os
    print os.getcwd[]  # Prints the current working directory
    
    42 từ mô -đun
    import os
    print os.getcwd[]  # Prints the current working directory
    
    43 tiêu chuẩn. Điều này được thực hiện bởi chức năng
    import os
    print os.getcwd[]  # Prints the current working directory
    
    44 được sử dụng bởi distutils.
    import os
    print os.getcwd[]  # Prints the current working directory
    
    41 environment variable is not defined, the user’s home directory will be determined with the
    import os
    print os.getcwd[]  # Prints the current working directory
    
    42 function from the standard
    import os
    print os.getcwd[]  # Prints the current working directory
    
    43 module. This is done by the
    import os
    print os.getcwd[]  # Prints the current working directory
    
    44 function used by Distutils.

  3. Tức là, trong thư mục hiện tại [thường là vị trí của tập lệnh thiết lập].

  4. . Theo Python 1.5.2, tiền tố mặc định là

    import os
    print os.getcwd[]  # Prints the current working directory
    
    47 và DisTutils không phải là một phần của thư viện tiêu chuẩn, vì vậy tệp cấu hình hệ thống sẽ là
    import os
    print os.getcwd[]  # Prints the current working directory
    
    48 trong cài đặt Python 1.5.2 tiêu chuẩn trong Windows.

  5. Trên Windows, nếu biến môi trường

    import os
    print os.getcwd[]  # Prints the current working directory
    
    41 không được xác định,
    import os
    print os.getcwd[]  # Prints the current working directory
    
    50 thì
    import os
    print os.getcwd[]  # Prints the current working directory
    
    51 và
    import os
    print os.getcwd[]  # Prints the current working directory
    
    52 sẽ được thử. Điều này được thực hiện bởi chức năng
    import os
    print os.getcwd[]  # Prints the current working directory
    
    44 được sử dụng bởi distutils.
    import os
    print os.getcwd[]  # Prints the current working directory
    
    41 environment variable is not defined,
    import os
    print os.getcwd[]  # Prints the current working directory
    
    50 then
    import os
    print os.getcwd[]  # Prints the current working directory
    
    51 and
    import os
    print os.getcwd[]  # Prints the current working directory
    
    52 will be tried. This is done by the
    import os
    print os.getcwd[]  # Prints the current working directory
    
    44 function used by Distutils.

Cú pháp của các tệp cấu hình

Các tệp cấu hình Distutils đều có cùng cú pháp. Các tệp cấu hình được nhóm thành các phần. Có một phần cho mỗi lệnh distutils, cộng với phần

import os
print os.getcwd[]  # Prints the current working directory
54 cho các tùy chọn toàn cầu ảnh hưởng đến mọi lệnh. Mỗi phần bao gồm một tùy chọn trên mỗi dòng, được chỉ định là
import os
print os.getcwd[]  # Prints the current working directory
55.

Ví dụ: sau đây là một tệp cấu hình hoàn chỉnh chỉ buộc tất cả các lệnh phải chạy lặng lẽ theo mặc định:

Nếu điều này được cài đặt dưới dạng tệp cấu hình hệ thống, nó sẽ ảnh hưởng đến tất cả việc xử lý bất kỳ phân phối mô -đun Python nào của bất kỳ người dùng nào trên hệ thống hiện tại. Nếu nó được cài đặt dưới dạng tệp cấu hình cá nhân của bạn [trên các hệ thống hỗ trợ chúng], nó sẽ chỉ ảnh hưởng đến phân phối mô -đun do bạn xử lý. Và nếu nó được sử dụng làm

import os
print os.getcwd[]  # Prints the current working directory
36 cho một phân phối mô -đun cụ thể, nó chỉ ảnh hưởng đến phân phối đó.

Bạn có thể ghi đè thư mục mặc định của Build Build Base và thực hiện các lệnh Build* luôn buộc phải xây dựng lại tất cả các tệp sau:build* commands always forcibly rebuild all files with the following:

os.chdir['c:\\Users\\uname\\desktop\\python']  # Provide the new path here
0

tương ứng với các đối số dòng lệnh

os.chdir['c:\\Users\\uname\\desktop\\python']  # Provide the new path here
1

Ngoại trừ bao gồm cả lệnh xây dựng trên dòng lệnh có nghĩa là lệnh đó sẽ được chạy. Bao gồm một lệnh cụ thể trong các tệp cấu hình không có hàm ý như vậy; Điều đó chỉ có nghĩa là nếu lệnh được chạy, các tùy chọn trong tệp cấu hình sẽ được áp dụng. [Hoặc nếu các lệnh khác lấy giá trị từ nó được chạy, chúng sẽ sử dụng các giá trị trong tệp cấu hình.]build command on the command-line means that command will be run. Including a particular command in config files has no such implication; it only means that if the command is run, the options in the config file will apply. [Or if other commands that derive values from it are run, they will use the values in the config file.]

Bạn có thể tìm ra danh sách đầy đủ các tùy chọn cho bất kỳ lệnh nào bằng tùy chọn

import os
print os.getcwd[]  # Prints the current working directory
57, ví dụ:

os.chdir['c:\\Users\\uname\\desktop\\python']  # Provide the new path here
2

Và bạn có thể tìm ra danh sách đầy đủ các tùy chọn toàn cầu bằng cách sử dụng

import os
print os.getcwd[]  # Prints the current working directory
57 mà không cần lệnh:

Xem thêm phần Tài liệu tham khảo của người Viking trong hướng dẫn sử dụng các mô -đun Python phân phối của Python.

Xây dựng phần mở rộng: Mẹo và Thủ thuật

Bất cứ khi nào có thể, các distutils cố gắng sử dụng thông tin cấu hình được cung cấp bởi trình thông dịch Python được sử dụng để chạy tập lệnh

os.getcwd[]
2. Ví dụ, cùng một trình biên dịch và cờ liên kết được sử dụng để biên dịch Python cũng sẽ được sử dụng để biên dịch các tiện ích mở rộng. Thông thường điều này sẽ hoạt động tốt, nhưng trong các tình huống phức tạp, điều này có thể không phù hợp. Phần này thảo luận về cách ghi đè hành vi phân tích thông thường.

Điều chỉnh cờ trình biên dịch/liên kết

Biên dịch một phần mở rộng Python được viết bằng C hoặc C ++ đôi khi sẽ yêu cầu chỉ định các cờ tùy chỉnh cho trình biên dịch và trình liên kết để sử dụng một thư viện cụ thể hoặc tạo ra một loại mã đối tượng đặc biệt. Điều này đặc biệt đúng nếu tiện ích mở rộng đã được thử nghiệm trên nền tảng của bạn hoặc nếu bạn đang cố gắng kết hợp chéo Python.

Trong trường hợp chung nhất, tác giả mở rộng có thể dự đoán rằng việc biên dịch các tiện ích mở rộng sẽ phức tạp và cung cấp một tệp

import os
print os.getcwd[]  # Prints the current working directory
60 để bạn chỉnh sửa. Điều này có thể sẽ chỉ được thực hiện nếu phân phối mô -đun chứa nhiều mô -đun mở rộng riêng biệt hoặc nếu chúng thường yêu cầu các bộ cờ biên dịch phức tạp để hoạt động.

Một tệp

import os
print os.getcwd[]  # Prints the current working directory
60, nếu có, được phân tích cú pháp để có được danh sách các phần mở rộng để xây dựng. Mỗi dòng trong một
import os
print os.getcwd[]  # Prints the current working directory
60 mô tả một mô -đun duy nhất. Các dòng có cấu trúc sau:

os.chdir['c:\\Users\\uname\\desktop\\python']  # Provide the new path here
3

Hãy lần lượt kiểm tra từng lĩnh vực.

  • Mô -đun là tên của mô -đun mở rộng sẽ được xây dựng và phải là định danh Python hợp lệ. Bạn có thể chỉ cần thay đổi điều này để đổi tên một mô -đun [chỉnh sửa thành mã nguồn cũng sẽ cần thiết], vì vậy điều này nên được để lại một mình.

  • SourceFile là bất cứ điều gì mà có khả năng là một tệp mã nguồn, ít nhất là đánh giá bởi tên tệp. Tên tệp kết thúc trong

    import os
    print os.getcwd[]  # Prints the current working directory
    
    63 được giả định là được viết bằng C, tên tệp kết thúc trong
    import os
    print os.getcwd[]  # Prints the current working directory
    
    64,
    import os
    print os.getcwd[]  # Prints the current working directory
    
    65 và
    import os
    print os.getcwd[]  # Prints the current working directory
    
    66 được cho là C ++ và các tên tệp kết thúc trong
    import os
    print os.getcwd[]  # Prints the current working directory
    
    67 hoặc
    import os
    print os.getcwd[]  # Prints the current working directory
    
    68 được giả định là mục tiêu C.

  • CPPARG là một đối số cho bộ tiền xử lý C và là bất cứ điều gì bắt đầu với

    import os
    print os.getcwd[]  # Prints the current working directory
    
    69,
    import os
    print os.getcwd[]  # Prints the current working directory
    
    70,
    import os
    print os.getcwd[]  # Prints the current working directory
    
    71 hoặc
    import os
    print os.getcwd[]  # Prints the current working directory
    
    72.

  • Thư viện là bất cứ điều gì kết thúc trong

    import os
    print os.getcwd[]  # Prints the current working directory
    
    73 hoặc bắt đầu với
    import os
    print os.getcwd[]  # Prints the current working directory
    
    74 hoặc
    import os
    print os.getcwd[]  # Prints the current working directory
    
    75.

Nếu một nền tảng cụ thể yêu cầu một thư viện đặc biệt trên nền tảng của bạn, bạn có thể thêm nó bằng cách chỉnh sửa tệp

import os
print os.getcwd[]  # Prints the current working directory
60 và chạy
import os
print os.getcwd[]  # Prints the current working directory
77. Ví dụ: nếu mô -đun được xác định bởi dòng

Phải được liên kết với thư viện toán học

import os
print os.getcwd[]  # Prints the current working directory
78 trên nền tảng của bạn, chỉ cần thêm
import os
print os.getcwd[]  # Prints the current working directory
79 vào dòng:

Các công tắc tùy ý dành cho trình biên dịch hoặc trình liên kết có thể được cung cấp với các tùy chọn

import os
print os.getcwd[]  # Prints the current working directory
80 Arg và
import os
print os.getcwd[]  # Prints the current working directory
81 Arg:

os.chdir['c:\\Users\\uname\\desktop\\python']  # Provide the new path here
4

Tùy chọn tiếp theo sau

import os
print os.getcwd[]  # Prints the current working directory
80 và
import os
print os.getcwd[]  # Prints the current working directory
81 sẽ được nối vào dòng lệnh thích hợp, vì vậy trong ví dụ trên, trình biên dịch sẽ được truyền tùy chọn
import os
print os.getcwd[]  # Prints the current working directory
84 và trình liên kết sẽ được truyền
import os
print os.getcwd[]  # Prints the current working directory
85. Nếu tùy chọn trình biên dịch yêu cầu đối số, bạn sẽ phải cung cấp nhiều tùy chọn
import os
print os.getcwd[]  # Prints the current working directory
80; Ví dụ: để vượt qua
import os
print os.getcwd[]  # Prints the current working directory
87 Tệp
import os
print os.getcwd[]  # Prints the current working directory
60 sẽ phải chứa
import os
print os.getcwd[]  # Prints the current working directory
89.

Cờ trình biên dịch cũng có thể được cung cấp thông qua việc thiết lập biến môi trường

import os
print os.getcwd[]  # Prints the current working directory
90. Nếu được đặt, nội dung của
import os
print os.getcwd[]  # Prints the current working directory
90 sẽ được thêm vào các cờ trình biên dịch được chỉ định trong tệp
import os
print os.getcwd[]  # Prints the current working directory
60.
import os
print os.getcwd[]  # Prints the current working directory
90 environment variable. If set, the contents of
import os
print os.getcwd[]  # Prints the current working directory
90 will be added to the compiler flags specified in the
import os
print os.getcwd[]  # Prints the current working directory
60 file.

Sử dụng trình biên dịch không phải Microsoft trên Windows¶

Borland/Codegear C ++ ¶

Tiểu mục này mô tả các bước cần thiết để sử dụng Distutils với trình biên dịch Borland C ++ Phiên bản 5.5. Trước tiên, bạn phải biết rằng định dạng tệp đối tượng Borland [OMF] khác với định dạng được sử dụng bởi phiên bản Python bạn có thể tải xuống từ trang web Python hoặc Activeestate. . Bạn có thể làm điều này như sau:

os.chdir['c:\\Users\\uname\\desktop\\python']  # Provide the new path here
5

Chương trình

import os
print os.getcwd[]  # Prints the current working directory
94 đi kèm với trình biên dịch Borland. Tệp
import os
print os.getcwd[]  # Prints the current working directory
93 nằm trong thư mục
import os
print os.getcwd[]  # Prints the current working directory
96 của cài đặt Python của bạn. Nếu tiện ích mở rộng của bạn sử dụng các thư viện khác [zlib, thì], bạn cũng phải chuyển đổi chúng.

Các tệp được chuyển đổi phải cư trú trong các thư mục giống như các thư viện thông thường.

Làm thế nào để Distutils quản lý để sử dụng các thư viện này với tên đã thay đổi của chúng? Nếu tiện ích mở rộng cần một thư viện [ví dụ:

import os
print os.getcwd[]  # Prints the current working directory
97] DISTUTILS kiểm tra trước nếu tìm thấy thư viện có hậu tố
import os
print os.getcwd[]  # Prints the current working directory
98 [ví dụ:
import os
print os.getcwd[]  # Prints the current working directory
99] và sau đó sử dụng thư viện này. Trong trường hợp, nó không tìm thấy một thư viện đặc biệt như vậy, nó sử dụng tên mặc định [
os.chdir['c:\\Users\\uname\\desktop\\python']  # Provide the new path here
00.] 1

Để để Distutils biên dịch tiện ích mở rộng của bạn với Borland C ++, bây giờ bạn phải gõ:

os.chdir['c:\\Users\\uname\\desktop\\python']  # Provide the new path here
6

Nếu bạn muốn sử dụng trình biên dịch Borland C ++ làm mặc định, bạn có thể chỉ định điều này trong tệp cấu hình cá nhân hoặc toàn hệ thống của mình để biết DisTUTils [xem phần Tệp cấu hình Distutils.]Distutils Configuration Files.]

GNU C / Cygwin / Mingw¶

Phần này mô tả các bước cần thiết để sử dụng distutils với các trình biên dịch GNU C/C ++ trong các phân phối CYGWIN và MINGW của họ. 2 Đối với một thông dịch viên Python được xây dựng với Cygwin, mọi thứ sẽ hoạt động mà không cần bất kỳ bước nào sau đây.

Không phải tất cả các tiện ích mở rộng có thể được xây dựng với Mingw hoặc Cygwin, nhưng nhiều người có thể. Các tiện ích mở rộng rất có thể không hoạt động là những phần mở rộng sử dụng C ++ hoặc phụ thuộc vào các tiện ích mở rộng Microsoft Visual C.

Để để Distutils biên dịch tiện ích mở rộng của bạn với Cygwin, bạn phải gõ:

os.chdir['c:\\Users\\uname\\desktop\\python']  # Provide the new path here
7

và đối với Cygwin ở chế độ không cygwin 3 hoặc cho loại MingW:

os.chdir['c:\\Users\\uname\\desktop\\python']  # Provide the new path here
8

Nếu bạn muốn sử dụng bất kỳ tùy chọn/trình biên dịch nào làm mặc định, bạn nên xem xét việc viết nó trong tệp cấu hình cá nhân hoặc toàn hệ thống của mình cho DisTUTils [xem phần Tệp cấu hình Distutils.]Distutils Configuration Files.]

Các phiên bản cũ của Python và Mingw¶

Các hướng dẫn sau đây chỉ áp dụng nếu bạn sử dụng phiên bản Python kém hơn 2.4.1 với MINGW kém hơn 3.0.0 [với Binutils-2.13.90-20030111-1].

Các trình biên dịch này yêu cầu một số thư viện đặc biệt. Nhiệm vụ này phức tạp hơn so với Borland, C ++, vì không có chương trình nào để chuyển đổi thư viện. Đầu tiên bạn phải tạo một danh sách các biểu tượng mà Python DLL xuất. .

os.chdir['c:\\Users\\uname\\desktop\\python']  # Provide the new path here
9

Vị trí của một

os.chdir['c:\\Users\\uname\\desktop\\python']  # Provide the new path here
01 được cài đặt sẽ phụ thuộc vào các tùy chọn cài đặt và phiên bản và ngôn ngữ của Windows. Trong một bản cài đặt chỉ dành cho tôi, nó sẽ xuất hiện trong gốc của thư mục cài đặt. Trong một cài đặt được chia sẻ, nó sẽ được đặt trong thư mục hệ thống.

Sau đó, bạn có thể tạo từ những thông tin này một thư viện nhập khẩu cho GCC.

import os
path="/Users/HOME/Desktop/Addl Work/TimeSeries-Done"
os.chdir[path]
0

Thư viện kết quả phải được đặt trong cùng thư mục với

import os
print os.getcwd[]  # Prints the current working directory
93. [Nên là thư mục
os.chdir['c:\\Users\\uname\\desktop\\python']  # Provide the new path here
03 trong thư mục cài đặt Python của bạn.]

Nếu tiện ích mở rộng của bạn sử dụng các thư viện khác [zlib, thì], bạn cũng có thể phải chuyển đổi chúng. Các tệp được chuyển đổi phải cư trú trong các thư mục giống như các thư viện thông thường làm.

Chú thích

1

Điều này cũng có nghĩa là bạn có thể thay thế tất cả các thư viện quan hệ hiện có bằng các thư viện OMF cùng tên.

2

Kiểm tra //www.sourceware.org/cygwin/ để biết thêm thông tin

3

Sau đó, bạn không có sẵn mô phỏng POSIX, nhưng bạn cũng không cần

os.chdir['c:\\Users\\uname\\desktop\\python']  # Provide the new path here
04.

Bài Viết Liên Quan

Chủ Đề