Python văn kiện thao tác hòa dị thường xử lý: Cao hiệu xử lý sổ cư đích lợi khí

在这里插入图片描述

Văn chương mục lục

Trọng ôn Python, thích hợp tân thủ đáp kiến tri thức thể hệ, dã thích hợp đại lão đích ôn cố tri tân ~

Nhất, dẫn ngôn

1.1 văn kiện thao tác hòa dị thường xử lý đối vu biên trình đích trọng yếu tính

Văn kiện thao tác hòa dị thường xử lý đối vu biên trình phi thường trọng yếu. Tha môn sử đắc ngã môn năng cú xử lý văn kiện sổ cư, trì cửu hóa sổ cư, đạo nhập hòa đạo xuất sổ cư, tịnh thả năng cú ưu nhã địa xử lý hòa giải quyết thác ngộ, đề cao trình tự đích khả kháo tính hòa ổn định tính.

  1. Văn kiện thao tác:
    • Sổ cư đích độc thủ hòa tả nhập:Văn kiện thao tác duẫn hứa ngã môn tòng văn kiện trung độc thủ sổ cư hoặc tương sổ cư tả nhập văn kiện. Giá đối vu xử lý đại lượng sổ cư, phối trí văn kiện, nhật chí ký lục đẳng phi thường trọng yếu.
    • Sổ cư trì cửu hóa:Thông quá văn kiện thao tác, ngã môn khả dĩ tương sổ cư tồn trữ tại văn kiện trung, dĩ tiện tại trình tự quan bế hậu nhưng nhiên khả dĩ phóng vấn hòa sử dụng giá ta sổ cư.
    • Sổ cư đích đạo nhập hòa đạo xuất:Văn kiện thao tác sử đắc ngã môn khả dĩ tương sổ cư tòng nhất cá trình tự đạo xuất, tịnh tại lánh nhất cá trình tự trung đạo nhập sử dụng, thật hiện sổ cư cộng hưởng hòa giao hỗ.
  2. Dị thường xử lý:
    • Thác ngộ xử lý:Dị thường xử lý cơ chế duẫn hứa ngã môn tại trình tự vận hành quá trình trung kiểm trắc hòa xử lý thác ngộ. Đương trình tự ngộ đáo thác ngộ thời, dị thường xử lý khả dĩ bang trợ ngã môn ưu nhã địa xử lý thác ngộ, nhi bất thị trực tiếp băng hội.
    • Dị thường tín tức:Dị thường xử lý đề cung liễu hữu quan thác ngộ phát sinh vị trí hòa loại hình đích tường tế tín tức, giá hữu trợ vu ngã môn khoái tốc định vị hòa giải quyết vấn đề.
    • Dung thác năng lực:Thông quá thích đương đích dị thường xử lý, ngã môn khả dĩ biên tả canh kiện tráng đích đại mã, tăng cường trình tự đích dung thác năng lực, giảm thiếu ý ngoại thác ngộ đối trình tự đích ảnh hưởng.

1.2 Python tác vi thật hiện văn kiện thao tác hòa dị thường xử lý đích cường đại công cụ

Python tác vi nhất chủng biên trình ngữ ngôn, tại văn kiện thao tác hòa dị thường xử lý phương diện cụ hữu hứa đa cường đại đích đặc tính hòa ưu thế. Tha đề cung liễu giản khiết đích ngữ pháp, nội trí hàm sổ hòa phương pháp, thượng hạ văn quản lý khí đẳng tiện tiệp đích văn kiện thao tác công năng, tịnh thả thông quá dị thường xử lý cơ chế, sử đắc bộ hoạch hòa xử lý thác ngộ biến đắc giản đan nhi linh hoạt.

  1. Văn kiện thao tác:
    • Giản khiết đích ngữ pháp:Python đề cung liễu giản khiết nhi trực quan đích ngữ pháp, sử đắc văn kiện đích độc thủ hòa tả nhập thao tác biến đắc phi thường dung dịch.
    • Nội trí hàm sổ hòa phương pháp:Python nội trí liễu phong phú đích văn kiện thao tác hàm sổ hòa phương pháp, nhưopen(), read(), write(), close()Đẳng, khả dĩ khinh tùng địa tiến hành văn kiện đích đả khai, độc thủ, tả nhập hòa quan bế thao tác.
    • Thượng hạ văn quản lý khí ( Context Manager ):Python đíchwithNgữ cú kết hợp thượng hạ văn quản lý khí khả dĩ tự động quản lý văn kiện đích đả khai hòa quan bế, tị miễn liễu thủ động xử lý văn kiện quan bế đích ma phiền.
    • Phong phú đích văn kiện xử lý mô khối:Python hoàn đề cung liễu hứa đa văn kiện xử lý tương quan đích mô khối, nhưos, shutil, globĐẳng, đề cung liễu canh đa tiện tiệp đích văn kiện thao tác công năng.
  2. Dị thường xử lý:
    • Dị thường loại hòa nội trí dị thường:Python đề cung liễu phong phú đích dị thường loại hòa nội trí dị thường, khả dĩ dụng vu bộ hoạch các chủng bất đồng loại hình đích thác ngộ.
    • try-except ngữ cú:Python đíchtry-exceptNgữ cú sử đắc bộ hoạch hòa xử lý dị thường biến đắc phi thường giản đan. Ngã môn khả dĩ tương khả năng dẫn phát dị thường đích đại mã phóng tạitryKhối trung, nhiên hậu thông quáexceptKhối bộ hoạch tịnh xử lý dị thường.
    • Đa trọng dị thường bộ hoạch:Python duẫn hứa ngã môn tại nhất cá try khối trung bộ hoạch đa cá bất đồng loại hình đích dị thường, khả dĩ căn cư nhu yếu đối bất đồng loại hình đích dị thường tiến hành bất đồng đích xử lý.
    • Tối chung xử lý ( finally ):Python đíchtry-exceptNgữ cú hoàn duẫn hứa sử dụngfinallyKhối, vô luận thị phủ phát sinh dị thường, kỳ trung đích đại mã đô hội bị chấp hành. Giá khả dĩ dụng vu xác bảo tư nguyên đích thích phóng hòa thanh lý công tác.

Nhị, vi thập ma học tập văn kiện thao tác hòa dị thường xử lý

2.1 xử lý các chủng văn kiện cách thức: Tòng văn bổn đáo đồ tượng đáo âm tần đẳng

Python đề cung liễu phong phú đích khố hòa mô khối, khả dĩ xử lý các chủng văn kiện cách thức, bao quát văn bổn, đồ tượng, âm tần đẳng.

Tại bất đồng văn kiện cách thức xử lý phương diện đích ứng dụng:

  1. Văn bổn văn kiện xử lý:
    • Nội trí hàm sổ hòa phương pháp:Python nội trí liễu xử lý văn bổn văn kiện đích hàm sổ hòa phương pháp, nhưopen(), read(), write()Đẳng, khả dĩ dụng vu đả khai, độc thủ hòa tả nhập văn bổn văn kiện.
    • csv mô khối:csv mô khối đề cung liễu đối đậu hào phân cách hoặc kỳ tha phân cách phù phân cách đích văn bổn sổ cư tiến hành độc tả đích công năng. Tha khả dĩ khinh tùng địa xử lýCSV cách thứcĐích sổ cư.
    • json mô khối:json mô khối đề cung liễu tương sổ cư biên mã vi JSON cách thức hoặc giải mã JSON sổ cư đích công năng. Tha khả dĩ dụng vu độc thủ hòa tả nhậpJSON cách thứcĐích văn kiện.
  2. Đồ tượng văn kiện xử lý:
    • PIL/Pillow khố:PIL ( Python Imaging Library ) thị nhất cá lưu hành đích khố, nhiPillowThịPILĐích nhất cá phân chi. Tha môn đề cung liễu xử lý đồ tượng văn kiện đích công năng, như đả khai, súc phóng, tài tiễn, bảo tồn đồ tượng đẳng.
    • OpenCV khố:OpenCV thị nhất cá kế toán cơ thị giác khố, khả dĩ dụng vu xử lý đồ tượng hòa thị tần. Tha đề cung liễu dụng vu độc thủ, biên tập hòa bảo tồn các chủng đồ tượng cách thức đích công năng.
  3. Âm tần văn kiện xử lý:
    • pydub khố:pydub khố thị nhất cá giản đan dịch dụng đích âm tần xử lý khố, khả dĩ dụng vu độc thủ, tiễn thiết, hợp tịnh hòa chuyển hoán âm tần văn kiện. Tha chi trì đa chủng thường kiến đích âm tần cách thức.
    • librosa khố:librosa thị nhất cá chuyên môn dụng vu âm tần hòa âm nhạc tín hào xử lý đích khố. Tha đề cung liễu các chủng công năng, như độc thủ âm tần văn kiện, đề thủ đặc chinh, tần phổ phân tích đẳng.

Trừ liễu thượng thuật khố hòa mô khối, Python hoàn hữu hứa đa kỳ tha dụng vu xử lý bất đồng văn kiện cách thức đích khố hòa công cụ, nhưnumpy, scipy, matplotlibĐẳng, tại khoa học kế toán, sổ cư phân tích hòa khả thị hóa phương diện phi thường hữu dụng.

2.2 xác bảo đại mã đích lỗ bổng tính: Hữu hiệu xử lý dị thường tình huống

Xác bảo đại mã đích lỗ bổng tính thị biên trình trung phi thường trọng yếu đích nhất bộ phân, nhân vi đại mã khả năng hội diện lâm các chủng bất đồng đích dị thường tình huống. Python đề cung liễu dị thường xử lý cơ chế, khả dĩ hữu hiệu địa xử lý dị thường tình huống, tị miễn trình tự nhân dị thường nhi băng hội hoặc sản sinh vị dự kỳ đích kết quả.

Python trung xác bảo đại mã lỗ bổng tính đích kỹ xảo:

  1. Sử dụng try-except ngữ cú:try-except ngữ cú thị Python trung xử lý dị thường đích chủ yếu phương thức. Ngã môn khả dĩ tương khả năng dẫn phát dị thường đích đại mã phóng tại try khối trung, tại phát sinh dị thường thời bộ hoạch tịnh xử lý tha môn.
try:
# khả năng dẫn phát dị thường đích đại mã
exceptExceptionase:
# xử lý dị thường đích đại mã
  1. Bộ hoạch đặc định loại hình đích dị thường:Tại try-except ngữ cú trung, ngã môn khả dĩ thông quá chỉ định dị thường loại hình lai bộ hoạch đặc định loại hình đích dị thường. Giá khả dĩ sử ngã môn căn cư bất đồng loại hình đích dị thường tiến hành bất đồng đích xử lý.
try:
# khả năng dẫn phát dị thường đích đại mã
exceptValueErrorasve:
# xử lý trị thác ngộ dị thường đích đại mã
exceptIndexErrorasie:
# xử lý tác dẫn thác ngộ dị thường đích đại mã
  1. finally khối:finally khối thị nhất cá khả tuyển đích đại mã khối, tha thủy chung tại try-except ngữ cú chấp hành hoàn tất hậu bị chấp hành, vô luận thị phủ phát sinh dị thường. Thông thường dụng vu thanh lý thao tác, như quan bế văn kiện hoặc sổ cư khố liên tiếp đẳng.
try:
# khả năng dẫn phát dị thường đích đại mã
exceptExceptionase:
# xử lý dị thường đích đại mã
finally:
# thanh lý thao tác đích đại mã
  1. Tự định nghĩa dị thường:Trừ liễu Python nội trí đích dị thường loại hình ngoại, ngã môn hoàn khả dĩ sang kiến tự định nghĩa dị thường loại hình, dĩ tiện canh hảo địa biểu kỳ đặc định đích dị thường tình huống. Ngã môn khả dĩ thông quá kế thừa Exception loại lai sang kiến tự định nghĩa dị thường loại hình.
classCustomError(Exception):
pass

try:
ifsome_condition:
raiseCustomError("Tự định nghĩa thác ngộ")
exceptCustomErrorasce:
# xử lý tự định nghĩa dị thường đích đại mã

Tam, văn kiện độc thủ hòa tả nhập

3.1 đả khai văn kiện: Như hà đả khai văn kiện tịnh độc thủ kỳ trung đích nội dung

Tại Python trung, khả dĩ sử dụng nội trí đíchopen()Hàm sổ lai đả khai văn kiện tịnh độc thủ kỳ trung đích nội dung.

# đả khai văn kiện
file=open('example.txt','r')# 'example.txt' thị văn kiện đích lộ kính, 'r' biểu kỳ dĩ chỉ độc mô thức đả khai văn kiện

# độc thủ văn kiện nội dung
content=file.read()
print(content)

# quan bế văn kiện
file.close()

ps:Tại độc thủ hoàn văn kiện nội dung hậu, ứng cai sử dụngclose()Phương pháp quan bế văn kiện, dĩ thích phóng hệ thống tư nguyên.

Thử ngoại, hoàn hữu kỳ tha nhất taopen()Hàm sổ đích tham sổ khả dĩ dụng vu bất đồng đích nhu cầu:

  • mode:Đả khai văn kiện đích mô thức.

    • 'r':Chỉ độc mô thức ( mặc nhận ).
    • 'w':Tả nhập mô thức. Như quả văn kiện bất tồn tại, tắc sang kiến nhất cá tân văn kiện; như quả văn kiện dĩ tồn tại, tắc thanh không văn kiện nội dung.
    • 'a':Truy gia mô thức. Như quả văn kiện bất tồn tại, tắc sang kiến nhất cá tân văn kiện; như quả văn kiện dĩ tồn tại, tắc tại văn kiện mạt vĩ truy gia nội dung.
    • 'x':Độc chiêm sang kiến mô thức. Cận tại văn kiện bất tồn tại thời sang kiến tân văn kiện, như quả văn kiện dĩ tồn tại tắc dẫn phát dị thường.
  • encoding:Văn kiện biên mã phương thức. Lệ như,'utf-8'Biểu kỳ sử dụng UTF-8 biên mã phương thức ( mặc nhận trị ).

  • newline:Văn bổn văn kiện đích hoán hành phù. Khả dĩ thiết trí viNoneDĩ sử dụng hệ thống mặc nhận đích hoán hành phù.

Trừ liễu sử dụngread()Phương pháp nhất thứ tính độc thủ chỉnh cá văn kiện nội dung, hoàn khả dĩ sử dụng kỳ tha phương pháp lai trục hành hoặc trục khối địa độc thủ văn kiện nội dung, nhưreadline(),readlines()Đẳng. Giá ta phương pháp căn cư thật tế nhu cầu tuyển trạch sử dụng.

3.2 tả nhập văn kiện: Như hà tương sổ cư tả nhập văn kiện

Tại Python trung, khả dĩ sử dụng nội trí đíchopen()Hàm sổ lai đả khai văn kiện tịnh tương sổ cư tả nhập văn kiện trung.

# đả khai văn kiện
file=open('example.txt','w')# 'example.txt' thị văn kiện đích lộ kính, 'w' biểu kỳ dĩ tả nhập mô thức đả khai văn kiện

# tả nhập sổ cư
file.write('Hello, world!\n')
file.write('This is an example file.\n')

# quan bế văn kiện
file.close()

ps:Tại tả nhập hoàn sổ cư hậu, ứng cai sử dụngclose()Phương pháp quan bế văn kiện, dĩ thích phóng hệ thống tư nguyên. Lánh ngoại, như quả yếu tả nhập nhị tiến chế sổ cư, tắc nhu yếu sử dụngwbMô thức đả khai văn kiện.

  • Thử ngoại, hoàn hữu kỳ tha nhất taopen()Hàm sổ đích tham sổ khả dĩ dụng vu bất đồng đích nhu cầu:

    • mode:Đả khai văn kiện đích mô thức.

      • 'r':Chỉ độc mô thức ( mặc nhận ).
      • 'w':Tả nhập mô thức. Như quả văn kiện bất tồn tại, tắc sang kiến nhất cá tân văn kiện; như quả văn kiện dĩ tồn tại, tắc thanh không văn kiện nội dung.
      • 'a':Truy gia mô thức. Như quả văn kiện bất tồn tại, tắc sang kiến nhất cá tân văn kiện; như quả văn kiện dĩ tồn tại, tắc tại văn kiện mạt vĩ truy gia nội dung.
      • 'x':Độc chiêm sang kiến mô thức. Cận tại văn kiện bất tồn tại thời sang kiến tân văn kiện, như quả văn kiện dĩ tồn tại tắc dẫn phát dị thường.
    • encoding:Văn kiện biên mã phương thức. Lệ như,'utf-8'Biểu kỳ sử dụng UTF-8 biên mã phương thức ( mặc nhận trị ).

    • newline:Văn bổn văn kiện đích hoán hành phù. Khả dĩ thiết trí viNoneDĩ sử dụng hệ thống mặc nhận đích hoán hành phù.

Trừ liễu sử dụngwrite()Phương pháp nhất thứ tính tả nhập chỉnh cá tự phù xuyến, hoàn khả dĩ sử dụng kỳ tha phương pháp lai trục hành hoặc trục khối địa tả nhập văn kiện nội dung, nhưwritelines()Đẳng. Giá ta phương pháp căn cư thật tế nhu cầu tuyển trạch sử dụng.

3.3 quan bế văn kiện: Như hà quan bế văn kiện hòa xử lý dị thường tình huống

Tại Python trung, sử dụngopen()Hàm sổ đả khai văn kiện hậu, ứng cai sử dụngclose()Phương pháp quan bế văn kiện, dĩ thích phóng hệ thống tư nguyên.

# đả khai văn kiện
file=open('example.txt','r')

try:
# độc thủ văn kiện nội dung
content=file.read()
print(content)
finally:
# quan bế văn kiện
file.close()

Tại đả khai văn kiện thời xuất hiện dị thường, tắc ứng cai sử dụngtryHòaexceptNgữ cú lai xử lý dị thường tình huống.

try:
# đả khai văn kiện
file=open('example.txt','r')

try:
# độc thủ văn kiện nội dung
content=file.read()
print(content)
finally:
# quan bế văn kiện
file.close()
exceptFileNotFoundError:
print(' văn kiện bất tồn tại ')
exceptIOError:
print(' văn kiện độc thủ thác ngộ ')
except:
print(' kỳ tha dị thường ')

ps:Tại Python 3.3 cập dĩ thượng bản bổn trung, khả dĩ sử dụngwithNgữ cú lai tự động quản lý văn kiện đích đả khai hòa quan bế thao tác.

withopen('example.txt','r')asfile:
content=file.read()
print(content)

Sử dụngwithNgữ cú đả khai văn kiện hậu, bất nhu yếu hiển thức điều dụngclose()Phương pháp, văn kiện hội tạiwithKhối kết thúc thời tự động quan bế.

Tứ, văn kiện thao tác hòa lộ kính xử lý

4.1 văn kiện hòa văn kiện giáp đích cơ bổn thao tác: Sang kiến, san trừ, di động, phục chế đẳng

Tại Python trung, khả dĩ sử dụngosMô khối lai tiến hành văn kiện hòa văn kiện giáp đích cơ bổn thao tác, như sang kiến, san trừ, di động, phục chế đẳng.

  1. Sang kiến văn kiện giáp:
importos

folder_path='path/to/folder'
os.makedirs(folder_path)

ps:Như quả yếu sang kiến đích văn kiện giáp dĩ kinh tồn tại, hội dẫn phátFileExistsErrorDị thường.

  1. San trừ văn kiện giáp:
importos

folder_path='path/to/folder'
os.rmdir(folder_path)

ps:Chỉ hữu đương văn kiện giáp vi không thời tài năng thành công san trừ, phủ tắc hội dẫn phátOSErrorDị thường.

  1. Di động văn kiện hoặc văn kiện giáp:
importos

source_path='path/to/source'
destination_path='path/to/destination'
os.rename(source_path,destination_path)

ps:Mục tiêu vị trí dĩ kinh tồn tại đồng danh đích văn kiện hoặc văn kiện giáp, tắc hội phúc cái.

  1. Phục chế văn kiện hoặc văn kiện giáp:
importshutil

source_path='path/to/source'
destination_path='path/to/destination'
shutil.copy(source_path,destination_path)

ps:Mục tiêu vị trí dĩ kinh tồn tại đồng danh đích văn kiện hoặc văn kiện giáp, tắc hội dẫn phátFileExistsErrorDị thường.

Trừ liễu thượng thuật thao tác,osMô khối hoàn đề cung liễu kỳ tha nhất ta hàm sổ lai chấp hành canh đa đích văn kiện hòa văn kiện giáp thao tác, như liệt xuất mục lục nội dung, hoạch thủ văn kiện tín tức đẳng.

4.2 lộ kính đích biểu kỳ hòa xử lý: Tuyệt đối lộ kính hòa tương đối lộ kính, os mô khối đích ứng dụng

Tại Python trung, lộ kính khả dĩ biểu kỳ vi tuyệt đối lộ kính hoặc tương đối lộ kính.

  • Tuyệt đối lộ kính thị tòng căn mục lục khai thủy đích hoàn chỉnh lộ kính
  • Tương đối lộ kính thị tương đối vu đương tiền công tác mục lục đích lộ kính

Sử dụngosMô khối lai xử lý lộ kính đích thường kiến thao tác:

  1. Hoạch thủ đương tiền công tác mục lục:
importos

# getcwd() hàm sổ tương phản hồi đương tiền công tác mục lục đích tuyệt đối lộ kính
current_dir=os.getcwd()
print(current_dir)
  1. Tổ hợp lộ kính:
importos

# join() hàm sổ tương đa cá lộ kính tổ hợp vi nhất cá lộ kính, tịnh tự động thiêm gia chính xác đích lộ kính phân cách phù
path=os.path.join('dir','subdir','file.txt')
print(path)
  1. Hoạch thủ lộ kính đích mục lục danh hòa văn kiện danh:
importos

path='/path/to/file.txt'
# dirname() hàm sổ tương phản hồi lộ kính đích mục lục bộ phân
dirname=os.path.dirname(path)
# basename() hàm sổ tương phản hồi lộ kính đích văn kiện danh bộ phân
basename=os.path.basename(path)
print(dirname)
print(basename)
  1. Phán đoạn lộ kính thị phủ tồn tại:
importos

path='/path/to/file.txt'
# exists() hàm sổ tương phản hồi nhất cá bố nhĩ trị, chỉ kỳ lộ kính thị phủ tồn tại
exists=os.path.exists(path)
print(exists)
  1. Sách phân lộ kính đích mục lục danh hòa văn kiện danh:
importos

path='/path/to/file.txt'
# split() hàm sổ tương lộ kính sách phân vi mục lục danh hòa văn kiện danh, phản hồi nhất cá bao hàm lưỡng cá nguyên tố đích nguyên tổ
dirname,basename=os.path.split(path)
print(dirname)
print(basename)
  1. Hoạch thủ lộ kính đích tuyệt đối lộ kính:
importos

path='relative/path/to/file.txt'
# abspath() hàm sổ tương phản hồi lộ kính đích tuyệt đối lộ kính
absolute_path=os.path.abspath(path)
print(absolute_path)

Giá ta chỉ thịosMô khối trung nhất ta thường kiến đích lộ kính thao tác hàm sổ, hoàn hữu kỳ tha canh đa đích hàm sổ khả dụng vu xử lý lộ kính.

Ngũ, dị thường xử lý hòa điều thí

5.1 dị thường đích cơ bổn khái niệm hòa phân loại: Ngữ pháp thác ngộ, vận hành thời thác ngộ, la tập thác ngộ đẳng

Tại Python trung, dị thường thị chỉ do vu mỗ chủng nguyên nhân đạo trí trình tự vô pháp chính thường chấp hành đích thác ngộ tình huống. Đương ngộ đáo dị thường tình huống thời, trình tự hội phao xuất nhất cá dị thường đối tượng, như quả một hữu bị xử lý, trình tự tương hội băng hội tịnh thâu xuất thác ngộ tín tức.

Python trung đích dị thường khả dĩ phân vi tam loại:

  1. Ngữ pháp thác ngộ ( SyntaxError ):Thông thường thị do vu đại mã thư tả bất quy phạm nhi đạo trí đích thác ngộ, lệ như bính tả thác ngộ, khuyết thiếu quát hào đẳng đẳng. Giá chủng thác ngộ hội tại giải thích khí chi tiền tựu bị kiểm trắc đáo, nhân thử vô pháp vận hành trình tự.
  2. Vận hành thời thác ngộ ( RuntimeError ):Thông thường thị do trình tự vận hành thời xuất hiện đích vấn đề nhi đạo trí đích thác ngộ, lệ như trừ dĩ linh, văn kiện bất tồn tại đẳng đẳng. Giá chủng thác ngộ hội tại trình tự vận hành thời bị kiểm trắc đáo, tịnh thả khả dĩ thông quá dị thường xử lý cơ chế lai xử lý.
  3. La tập thác ngộ ( LogicError ):Thông thường thị do trình tự thiết kế bất đương hoặc giả toán pháp thật hiện thác ngộ đạo trí đích thác ngộ, lệ như tử tuần hoàn, la tập phán đoạn thác ngộ đẳng đẳng. Giá chủng thác ngộ thông thường bất hội bị kiểm trắc đáo, nhi thị hội đạo trí trình tự sản sinh thác ngộ đích kết quả.

Tại Python trung, ngã môn khả dĩ sử dụng try-except ngữ cú lai bộ hoạch tịnh xử lý dị thường. try khối trung đích đại mã hội bị chấp hành, như quả xuất hiện dị thường, tắc hội khiêu chuyển đáo đối ứng đích except khối tiến hành xử lý.

try:
# khả năng hội dẫn phát dị thường đích đại mã khối
a=1/0
exceptZeroDivisionError:
# xử lý đặc định loại hình đích dị thường
print("Trừ dĩ linh thác ngộ")
except:
# xử lý kỳ tha loại hình đích dị thường
print("Vị tri thác ngộ")

ps:Tại except ngữ cú trung khả dĩ tỉnh lược dị thường loại hình, giá dạng tựu hội xử lý sở hữu loại hình đích dị thường.

Trừ liễu try-except ngữ cú, Python hoàn đề cung liễu kỳ tha nhất ta dị thường xử lý cơ chế, lệ nhưfinally khối, raise ngữ cúĐẳng đẳng.

5.2 try-except ngữ cú: Bộ hoạch hòa xử lý dị thường tình huống

Tại Python trung, try-except ngữ cú dụng vu bộ hoạch hòa xử lý dị thường tình huống. Tha duẫn hứa ngã môn đối khả năng dẫn phát dị thường đích đại mã tiến hành giam khống, tịnh tại xuất hiện dị thường thời chấp hành tương ứng đích thao tác.

try-except ngữ cú đích cơ bổn ngữ pháp như hạ:

try:
# khả năng hội dẫn phát dị thường đích đại mã khối
except[Dị thường loại hình]:
# xử lý dị thường đích đại mã khối

Tại except ngữ cú trung, khả dĩ chỉ định đặc định đích dị thường loại hình lai bộ hoạch hòa xử lý đặc định loại hình đích dị thường. Như quả vị chỉ định dị thường loại hình, tắc hội bộ hoạch sở hữu loại hình đích dị thường.

Thường kiến đích dị thường loại hình:

  • Exception:Sở hữu dị thường đích cơ loại, khả dĩ bộ hoạch nhậm hà loại hình đích dị thường.
  • ValueError:Trị thác ngộ, đương truyện đệ cấp hàm sổ đích tham sổ loại hình chính xác đãn trị bất hợp pháp thời dẫn phát.
  • TypeError:Loại hình thác ngộ, đương thao tác hoặc hàm sổ ứng dụng vu bất kiêm dung đích loại hình thời dẫn phát.
  • FileNotFoundError:Văn kiện bất tồn tại thác ngộ, đương thường thí đả khai bất tồn tại đích văn kiện thời dẫn phát.
  • ZeroDivisionError:Trừ dĩ linh thác ngộ, đương thường thí trừ dĩ linh thời dẫn phát.

Trừ liễu chỉ định đặc định đích dị thường loại hình, ngã môn hoàn khả dĩ sử dụng đa cá except khối lai xử lý bất đồng đích dị thường tình huống.

try:
# khả năng hội dẫn phát dị thường đích đại mã khối
exceptValueError:
# xử lý trị thác ngộ đích đại mã khối
exceptFileNotFoundError:
# xử lý văn kiện bất tồn tại đích đại mã khối
except:
# xử lý kỳ tha dị thường đích đại mã khối

Tại except ngữ cú trung, dã khả dĩ thiêm giaelse khối hòa finally khối.else khối trung đích đại mã tương tại try khối trung một hữu phát sinh dị thường thời chấp hành, nhi finally khối trung đích đại mã tương thủy chung chấp hành, vô luận thị phủ phát sinh dị thường.

try:
# khả năng hội dẫn phát dị thường đích đại mã khối
exceptValueError:
# xử lý trị thác ngộ đích đại mã khối
else:
# try khối trung một hữu phát sinh dị thường thời chấp hành đích đại mã khối
finally:
# vô luận thị phủ phát sinh dị thường, thủy chung hội chấp hành đích đại mã khối

Thông quá sử dụng try-except ngữ cú, ngã môn khả dĩ canh hảo địa khống chế hòa xử lý trình tự trung khả năng xuất hiện đích dị thường tình huống, tị miễn trình tự băng hội tịnh đề cung hữu hảo đích thác ngộ xử lý.

5.3 điều thí kỹ xảo: print ngữ cú, đoạn điểm điều thí, nhật chí ký lục đẳng

Tại Python trung, điều thí thị khai phát quá trình trung tất bất khả thiếu đích hoạt động. Python đề cung liễu đa chủng điều thí kỹ xảo, bao quát print ngữ cú, đoạn điểm điều thí hòa nhật chí ký lục đẳng.

  1. print ngữ cú

print ngữ cú thị tối giản đan đích điều thí kỹ xảo chi nhất. Tha khả dĩ đả ấn xuất biến lượng đích trị, dĩ tiện ngã môn tra khán trình tự đích chấp hành quá trình.

x=10
print(x)# thâu xuất biến lượng x đích trị, tức 10
  1. Đoạn điểm điều thí

Trừ liễu print ngữ cú, Python hoàn chi trì đoạn điểm điều thí. Đoạn điểm điều thí thị nhất chủng giao hỗ thức đích điều thí phương thức, tha duẫn hứa ngã môn tại trình tự chấp hành đáo chỉ định đích hành thời tạm đình trình tự, dĩ tiện ngã môn kiểm tra biến lượng đích trị hòa trình tự đích trạng thái.

Tại Python trung, ngã môn khả dĩ sử dụngpdb mô khốiLai thật hiện đoạn điểm điều thí. Ngã môn chỉ nhu yếu tại trình tự trung sáp nhập nhất cá đoạn điểm, đương trình tự chấp hành đáo cai hành thời tựu hội tạm đình, nhiên hậu ngã môn khả dĩ sử dụng pdb mô khối lai tra khán hòa tu cải biến lượng đích trị.

importpdb

defadd(a,b):
# pdb.set_trace() hàm sổ lai khải động điều thí khí
# trình tự chấp hành đáo cai hành thời, tựu hội đình chỉ tịnh chuyển đáo pdb điều thí khí giới diện
pdb.set_trace()
returna+b

print(add(1,2))
  1. Nhật chí ký lục

Nhật chí ký lục thị nhất chủng canh cao cấp đích điều thí kỹ xảo, tha duẫn hứa ngã môn tại trình tự chấp hành quá trình trung ký lục các chủng tín tức, lệ như biến lượng đích trị, hàm sổ đích điều dụng tình huống đẳng đẳng. Giá ta tín tức khả dĩ tả nhập văn kiện hoặc thâu xuất đáo khống chế đài, dĩ tiện ngã môn tra khán hòa phân tích trình tự đích chấp hành quá trình.

Python đề cung liễulogging mô khốiLai thật hiện nhật chí ký lục. Ngã môn chỉ nhu yếu tại trình tự trung sơ thủy hóa nhật chí ký lục khí, tịnh tại trình tự trung sử dụng tương quan đích nhật chí ký lục hàm sổ lai ký lục tín tức tức khả.

importlogging

# basicConfig hàm sổ lai sơ thủy hóa nhật chí ký lục khí, tịnh chỉ định liễu nhật chí ký lục đích cấp biệt vi DEBUG
logging.basicConfig(level=logging.DEBUG,format='%(asctime)s - %(levelname)s - %(message)s')
# logging.debug hàm sổ lai ký lục nhất cá điều thí tín tức
logging.debug('This is a debug message')

# loại tự thâu xuất kết quả
2022-12-2816:07:57,504-DEBUG-Thisisa debug message

Trừ liễu debug hàm sổ, logging mô khối hoàn đề cung liễuinfo, warning, error hòa criticalĐẳng hàm sổ, khả dĩ căn cư cụ thể đích điều thí nhu cầu tuyển trạch tương ứng đích hàm sổ.

Lục, CSV hòa JSON văn kiện đích độc tả

6.1 CSV văn kiện đích độc tả: csv mô khối đích ứng dụng

Tại Python trung, ngã môn khả dĩ sử dụng csv mô khối lai độc tả CSV văn kiện. CSV thị nhất chủng thường dụng đích sổ cư cách thức, thông thường dụng vu tồn trữ biểu cách sổ cư.

csv mô khối đề cung liễu đa chủng phương pháp lai độc tả CSV văn kiện, bao quát độc thủ CSV văn kiện, tả nhập CSV văn kiện, dĩ cập tương sổ cư chuyển hoán vi CSV cách thức đẳng.

  1. Độc thủ CSV văn kiện

Sử dụng csv mô khối trung đíchreader hàm sổLai độc thủ CSV văn kiện. Cai hàm sổ phản hồi nhất cá điệt đại khí, dụng vu trục hành độc thủ CSV văn kiện trung đích sổ cư.

importcsv

withopen('data.csv','r')asf:
reader=csv.reader(f)
forrowinreader:
print(row)
  1. Tả nhập CSV văn kiện

Sử dụng csv mô khối trung đíchwriter hàm sổLai tả nhập CSV văn kiện. Cai hàm sổ tiếp thụ nhất cá khả điệt đại đối tượng tác vi thâu nhập, dụng vu tương sổ cư tả nhập CSV văn kiện trung.

importcsv

data=[
['Name','Age','Gender'],
['Tom',20,'Male'],
['Lucy',18,'Female'],
['John',22,'Male']
]

# sang kiến nhất cá danh vi data.csv đích CSV văn kiện
withopen('data.csv','w',newline='')asf:
writer=csv.writer(f)
writer.writerows(data)
  1. Tương sổ cư chuyển hoán vi CSV cách thức

Sử dụng csv mô khối trung đíchwriterow hàm sổLai tương sổ cư chuyển hoán vi CSV cách thức. Cai hàm sổ tiếp thụ nhất cá khả điệt đại đối tượng tác vi thâu nhập, dụng vu tương sổ cư chuyển hoán vi nhất hành CSV cách thức đích sổ cư.

importcsv

data=['Tom',20,'Male']

withopen('data.csv','a',newline='')asf:
writer=csv.writer(f)
writer.writerow(data)

Tại dĩ thượng kỳ lệ trung, ngã môn sử dụng liễuopen hàm sổLai đả khaiCSV văn kiện,Tịnh sử dụng liễuwith ngữ cúLai tự động quan bế văn kiện. Tại điều dụng open hàm sổ thời, ngã môn nhu yếu chỉ định văn kiện đích lộ kính hòa đả khai văn kiện đích mô thức ( 'r’ biểu kỳ chỉ độc, 'w’ biểu kỳ tả nhập, 'a’ biểu kỳ truy gia ). Đồng thời, ngã môn hoàn nhu yếu chỉ địnhnewline tham sổ,Dĩ tị miễn tại tả nhập CSV văn kiện thời xuất hiện không hành.

6.2 JSON văn kiện đích độc tả: json mô khối đích ứng dụng

Tại Python trung, ngã môn khả dĩ sử dụng json mô khối lai độc tả JSON văn kiện. JSON ( JavaScript Object Notation ) thị nhất chủng thường dụng đích sổ cư cách thức, thông thường dụng vu tồn trữ hòa giao hoán sổ cư.

json mô khối đề cung liễu đa chủng phương pháp lai độc tả JSON văn kiện, bao quát tương sổ cư chuyển hoán vi JSON cách thức, tương JSON cách thức đích sổ cư chuyển hoán vi Python đối tượng, độc thủ JSON văn kiện, dĩ cập tương Python đối tượng tả nhập JSON văn kiện đẳng.

  1. Tương sổ cư chuyển hoán vi JSON cách thức

Sử dụng json mô khối trung đíchdumps hàm sổTương sổ cư chuyển hoán vi JSON cách thức đích tự phù xuyến. Cai hàm sổ tiếp thụ nhất cá Python đối tượng tác vi thâu nhập, tịnh phản hồi nhất cá JSON cách thức đích tự phù xuyến.

importjson

data={
'name':'Tom',
'age':20,
'gender':'Male'
}

# tương data tự điển trung đích sổ cư chuyển hoán vi JSON cách thức đích tự phù xuyến
json_str=json.dumps(data)
print(json_str)
  1. Tương JSON cách thức đích sổ cư chuyển hoán vi Python đối tượng

Sử dụng json mô khối trung đíchloads hàm sổTương JSON cách thức đích tự phù xuyến chuyển hoán vi Python đối tượng. Cai hàm sổ tiếp thụ nhất cá JSON cách thức đích tự phù xuyến tác vi thâu nhập, tịnh phản hồi nhất cá đối ứng đích Python đối tượng.

importjson

json_str='{ "name": "Tom", "age": 20, "gender": "Male" }'

# tương json_str tự phù xuyến trung đích JSON cách thức sổ cư chuyển hoán vi Python đối tượng
data=json.loads(json_str)
print(data)
  1. Độc thủ JSON văn kiện

Sử dụng json mô khối trung đíchload hàm sổLai độc thủ JSON văn kiện. Cai hàm sổ tiếp thụ nhất cá văn kiện đối tượng tác vi thâu nhập, tịnh phản hồi đối ứng đích Python đối tượng.

importjson

withopen('data.json','r')asf:
# load hàm sổ độc thủ kỳ trung đích sổ cư, tịnh tương kỳ chuyển hoán vi Python đối tượng
data=json.load(f)
print(data)
  1. Tương Python đối tượng tả nhập JSON văn kiện

Sử dụng json mô khối trung đíchdump hàm sổLai tương Python đối tượng tả nhập JSON văn kiện. Cai hàm sổ tiếp thụ nhất cá Python đối tượng hòa nhất cá văn kiện đối tượng tác vi thâu nhập, tương Python đối tượng chuyển hoán vi JSON cách thức hậu tả nhập văn kiện trung.

Lệ như:

importjson

data={
'name':'Tom',
'age':20,
'gender':'Male'
}

# tương data tự điển trung đích sổ cư chuyển hoán vi JSON cách thức, tịnh tả nhập danh vi data.json đích văn kiện
withopen('data.json','w')asf:
json.dump(data,f)

Tại dĩ thượng kỳ lệ trung, ngã môn sử dụng liễuopen hàm sổLai đả khai JSON văn kiện, tịnh sử dụng liễuwith ngữ cúLai tự động quan bế văn kiện. Tại điều dụng open hàm sổ thời, ngã môn nhu yếu chỉ định văn kiện đích lộ kính hòa đả khai văn kiện đích mô thức ( 'r’ biểu kỳ chỉ độc, 'w’ biểu kỳ tả nhập, 'a’ biểu kỳ truy gia ).

Thất, thật tiễn hạng mục: Dụng Python GUI trình tự thật hiện nhất cá kế toán khí

Sử dụng liễu tkinter mô khối lai sang kiến nhất cá giản đan đích GUI giới diện, tịnh thật hiện liễu nhất cá giản đan đích kế toán khí:

importtkinterastk

classCalculator:
def__init__(self,master):
self.master=master
self.result=tk.StringVar()
self.create_widgets()

defcreate_widgets(self):
# hiển kỳ kết quả đích tiêu thiêm
result_label=tk.Label(self.master,textvariable=self.result)
result_label.grid(row=0,column=0,columnspan=4)

# sổ tự án nữu
foriinrange(10):
button=tk.Button(self.master,text=str(i),command=lambdanum=i:self.add_number(num))
button.grid(row=(9-i)//3+1,column=(i-1)%3)

# vận toán phù án nữu
plus_button=tk.Button(self.master,text='+',command=lambda:self.add_operator('+'))
plus_button.grid(row=1,column=3)
minus_button=tk.Button(self.master,text='-',command=lambda:self.add_operator('-'))
minus_button.grid(row=2,column=3)
multiply_button=tk.Button(self.master,text='*',command=lambda:self.add_operator('*'))
multiply_button.grid(row=3,column=3)
divide_button=tk.Button(self.master,text='/',command=lambda:self.add_operator('/'))
divide_button.grid(row=4,column=3)

# thanh không án nữu
clear_button=tk.Button(self.master,text='C',command=self.clear)
clear_button.grid(row=5,column=3)

# đẳng hào án nữu
equal_button=tk.Button(self.master,text='=',command=self.calculate)
equal_button.grid(row=4,column=2)

defadd_number(self,num):
self.result.set(self.result.get()+str(num))

defadd_operator(self,operator):
self.result.set(self.result.get()+operator)

defclear(self):
self.result.set('')

defcalculate(self):
try:
result=eval(self.result.get())
self.result.set(str(result))
exceptZeroDivisionError:
self.result.set('Error')

if__name__=='__main__':
root=tk.Tk()
root.title('Calculator')
Calculator(root)
root.mainloop()

Bất yếu thùy đầu tang khí, tức sử thất khứ nhất thiết, minh thiên nhưng tại nhĩ đích thủ lí

Bình luận204
Thiêm gia hồng bao

Thỉnh điền tả hồng bao chúc phúc ngữ hoặc tiêu đề

Hồng bao cá sổ tối tiểu vi 10 cá

Nguyên

Hồng bao kim ngạch tối đê 5 nguyên

Đương tiền dư ngạch3.43Nguyên Tiền vãng sung trị >
Nhu chi phó:10.00Nguyên
Thành tựu nhất ức kỹ thuật nhân!
Lĩnh thủ hậu nhĩ hội tự động thành vi bác chủ hòa hồng bao chủ đích phấn ti Quy tắc
hope_wisdom
Phát xuất đích hồng bao

Đả thưởng tác giả

Ức ~ toại nguyện

Nhĩ đích cổ lệ tương thị ngã sang tác đích tối đại động lực

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
Tảo mã chi phó:¥1
Hoạch thủ trung
Tảo mã chi phó

Nâm đích dư ngạch bất túc, thỉnh canh hoán tảo mã chi phó hoặcSung trị

Đả thưởng tác giả

Thật phóNguyên
Sử dụng dư ngạch chi phó
Điểm kích trọng tân hoạch thủ
Tảo mã chi phó
Tiền bao dư ngạch 0

Để khấu thuyết minh:

1. Dư ngạch thị tiền bao sung trị đích hư nghĩ hóa tệ, án chiếu 1:1 đích bỉ lệ tiến hành chi phó kim ngạch đích để khấu.
2. Dư ngạch vô pháp trực tiếp cấu mãi hạ tái, khả dĩ cấu mãi VIP, phó phí chuyên lan cập khóa trình.

Dư ngạch sung trị