Python lấy kích thước của biến tính bằng mb

Trong bài viết này, chúng ta sẽ thảo luận về các cách khác nhau để lấy kích thước tệp ở các định dạng mà con người có thể đọc được như Byte, Kilobytes [KB], MegaBytes [MB], GigaBytes [GB], v.v.

Các cách khác nhau để lấy kích thước tệp tính bằng Byte

Nhận kích thước tệp theo byte bằng os. đường dẫn. getsize[]

os.path.getsize[path]

Nó chấp nhận đường dẫn tệp làm đối số và trả về kích thước của tệp tại đường dẫn đã cho theo byte.
Nếu tệp không tồn tại ở đường dẫn đã cho hoặc tệp không thể truy cập được thì tệp sẽ xuất hiện lỗi os. lỗi. Do đó, hãy luôn kiểm tra xem tệp có tồn tại hay không trước khi gọi hàm này.

Hãy sử dụng chức năng này để lấy kích thước của tệp theo byte,

import os

def get_file_size_in_bytes[file_path]:
   """ Get size of file at given path in bytes"""
   size = os.path.getsize[file_path]
   return size


file_path = 'big_file.csv'

size = get_file_size_in_bytes[file_path]
print['File size in bytes : ', size]

Đầu ra.
______2

Nhận kích thước tệp theo byte bằng os. thống kê[]. st_size

Mô-đun os của Python cung cấp chức năng lấy số liệu thống kê về tệp,

os.stat[path, *, dir_fd=None, follow_symlinks=True]

Nó chấp nhận đường dẫn tệp [một chuỗi] làm đối số và trả về một đối tượng có cấu trúc stat, chứa các thuộc tính khác nhau về tệp tại một đường dẫn nhất định. Một trong các thuộc tính là st_size, có kích thước của tệp tính bằng byte.

quảng cáo

Hãy sử dụng chức năng này để lấy kích thước của tệp theo byte,

import os

def get_file_size_in_bytes_2[file_path]:
   """ Get size of file at given path in bytes"""
   # get statistics of the file
   stat_info = os.stat[file_path]
   # get size of file in bytes
   size = stat_info.st_size
   return size

file_path = 'big_file.csv'

size = get_file_size_in_bytes_2[file_path]
print['File size in bytes : ', size]

Đầu ra.
______2

Nhận kích thước tệp theo byte bằng pathlib. Đường dẫn. thống kê[]. st_size

Hãy sử dụng mô-đun pathlib để lấy kích thước của tệp theo byte,

from pathlib import Path

def get_file_size_in_bytes_3[file_path]:
   """ Get size of file at given path in bytes"""
   # get file object
   file_obj = Path[file_path]
   # Get file size from stat object of file
   size = file_obj.stat[].st_size
   return size

file_path = 'big_file.csv'

size = get_file_size_in_bytes_3[file_path]
print['File size in bytes : ', size]

Đầu ra.
______2
Trong tất cả các kỹ thuật trên, chúng tôi có kích thước tệp tính bằng byte. Điều gì sẽ xảy ra nếu chúng ta muốn kích thước tệp ở định dạng con người có thể đọc được như KilloBytes, Megabyte hoặc GigaBytes, v.v.

Nhận kích thước tệp theo các đơn vị mà con người có thể đọc được như kilobyte [KB], Megabyte [MB] hoặc GigaBytes [GB]

1 KilloByte == 1024 byte
1 Megabyte == 1024*1024 byte
1 GigaByte == 1024*1024*1024 byte

Chúng tôi đã tạo một chức năng để chuyển đổi byte thành kilobyte [KB], Megabyte [MB] hoặc GigaBytes [GB] i. e

import enum

# Enum for size units
class SIZE_UNIT[enum.Enum]:
   BYTES = 1
   KB = 2
   MB = 3
   GB = 4


def convert_unit[size_in_bytes, unit]:
   """ Convert the size from bytes to other units like KB, MB or GB"""
   if unit == SIZE_UNIT.KB:
       return size_in_bytes/1024
   elif unit == SIZE_UNIT.MB:
       return size_in_bytes/[1024*1024]
   elif unit == SIZE_UNIT.GB:
       return size_in_bytes/[1024*1024*1024]
   else:
       return size_in_bytes

Hãy tạo một hàm để lấy kích thước tệp theo các đơn vị kích thước khác nhau. Hàm này sử dụng nội bộ cho hàm trên để chuyển đổi byte thành đơn vị kích thước nhất định,
import os

def get_file_size[file_name, size_type = SIZE_UNIT.BYTES ]:
   """ Get file in size in given unit like KB, MB or GB"""
   size = os.path.getsize[file_name]
   return convert_unit[size, size_type]

Hãy sử dụng hàm này để lấy kích thước của tệp đã cho theo KB,

Nhận kích thước của một tệp tính bằng Kilobyte i. e. KB

import os

def get_file_size_in_bytes[file_path]:
   """ Get size of file at given path in bytes"""
   size = os.path.getsize[file_path]
   return size


file_path = 'big_file.csv'

size = get_file_size_in_bytes[file_path]
print['File size in bytes : ', size]
0
Đầu ra.
______11
Nhận kích thước tệp tính bằng Megabyte  i. e. MB
____12
Đầu ra.
______13
Nhận kích thước của tệp bằng Gigabyte  i. e. GB
import os

def get_file_size_in_bytes[file_path]:
   """ Get size of file at given path in bytes"""
   size = os.path.getsize[file_path]
   return size


file_path = 'big_file.csv'

size = get_file_size_in_bytes[file_path]
print['File size in bytes : ', size]
4
Đầu ra.
____15

Kiểm tra xem tệp có tồn tại trước khi kiểm tra kích thước của tệp không

Nếu tệp không tồn tại ở đường dẫn đã cho, thì tất cả chức năng được tạo ở trên để lấy kích thước tệp có thể gây ra Lỗi. Do đó, trước tiên chúng ta nên kiểm tra xem tệp có tồn tại hay không, nếu có thì chỉ kiểm tra kích thước của tệp,

import os

def get_file_size_in_bytes[file_path]:
   """ Get size of file at given path in bytes"""
   size = os.path.getsize[file_path]
   return size


file_path = 'big_file.csv'

size = get_file_size_in_bytes[file_path]
print['File size in bytes : ', size]
6
Đầu ra.
______17
Dưới dạng tệp 'dummy_file. txt’ không tồn tại, vì vậy chúng tôi không thể tính kích thước của nó.

Ví dụ đầy đủ như sau,

import os

def get_file_size_in_bytes[file_path]:
   """ Get size of file at given path in bytes"""
   size = os.path.getsize[file_path]
   return size


file_path = 'big_file.csv'

size = get_file_size_in_bytes[file_path]
print['File size in bytes : ', size]
8
Đầu ra.
______19

Hướng dẫn về Pandas -Tìm hiểu Phân tích dữ liệu với Python

 
  • Hướng dẫn Pandas Phần #1 - Giới thiệu về Phân tích dữ liệu với Python
  • Hướng dẫn Pandas Phần #2 - Khái niệm cơ bản về Pandas Series
  • Hướng dẫn Pandas Phần #3 - Nhận & Đặt giá trị chuỗi
  • Pandas Tutorial Part #4 - Thuộc tính & phương thức của Pandas Series
  • Hướng dẫn về Pandas Phần #5 - Thêm hoặc xóa các thành phần của Pandas Series
  • Hướng dẫn về Pandas Phần #6 - Giới thiệu về DataFrame
  • Hướng dẫn về Pandas Phần #7 - DataFrame. loc[] - Chọn Hàng/Cột theo Lập chỉ mục
  • Hướng dẫn về Pandas Phần #8 - DataFrame. iloc[] - Chọn Hàng/Cột theo Tên Nhãn
  • Hướng dẫn về gấu trúc Phần #9 - Lọc các hàng trong khung dữ liệu
  • Hướng dẫn Pandas Phần #10 - Thêm/Xóa Hàng & Cột DataFrame
  • Hướng dẫn về Pandas Phần #11 - Các thuộc tính & phương thức DataFrame
  • Hướng dẫn Pandas Phần #12 - Xử lý dữ liệu bị thiếu hoặc giá trị NaN
  • Hướng dẫn về Pandas Phần #13 - Lặp lại các Hàng & Cột của DataFrame
  • Hướng dẫn Pandas Phần #14 - Sắp xếp DataFrame theo Hàng hoặc Cột
  • Hướng dẫn về gấu trúc Phần #15 - Hợp nhất hoặc ghép các khung dữ liệu
  • Hướng dẫn về Pandas Phần #16 - DataFrame GroupBy được giải thích bằng các ví dụ
 

Bạn đang muốn tạo dựng sự nghiệp trong Khoa học dữ liệu với Python?

Khoa học dữ liệu là tương lai và tương lai là ở đây ngay bây giờ. Các nhà khoa học dữ liệu hiện là những chuyên gia được tìm kiếm nhiều nhất hiện nay. Để trở thành một Nhà khoa học dữ liệu giỏi hoặc để chuyển đổi nghề nghiệp trong Khoa học dữ liệu, người ta phải sở hữu bộ kỹ năng phù hợp. Chúng tôi đã tuyển chọn danh sách Chứng chỉ chuyên nghiệp tốt nhất về Khoa học dữ liệu với Python. Các khóa học này sẽ dạy cho bạn các công cụ lập trình cho Khoa học dữ liệu như Pandas, NumPy, Matplotlib, Seaborn và cách sử dụng các thư viện này để triển khai các mô hình Máy học

Kiểm tra Đánh giá chi tiết về Chứng chỉ chuyên nghiệp tốt nhất về Khoa học dữ liệu với Python

Hãy nhớ rằng, Khoa học dữ liệu đòi hỏi rất nhiều kiên nhẫn, bền bỉ và thực hành. Vì vậy, hãy bắt đầu học ngay hôm nay

__ sizeof __ trong Python là gì?

Phương thức __sizeof__[] của Python trả về kích thước của đối tượng theo byte . hệ thống. phương thức getsizeof[] gọi nội bộ __sizeof__[] và thêm một số chi phí byte bổ sung, e. g. , để thu gom rác.

Biến Python lớn đến mức nào?

Tên biến chính thức trong Python có thể độ dài bất kỳ và có thể bao gồm chữ hoa và chữ thường [ A-Z , a-z ], chữ số [ 0 .

Một biến chiếm bao nhiêu bộ nhớ trong Python?

Số thực hoặc số thập phân chiếm một hoặc hai từ tùy thuộc vào cách nó được lưu trữ . Ví dụ: văn bản “xin chào” sẽ chiếm 5 byte dung lượng lưu trữ, mỗi ký tự một. Văn bản “12345” cũng sẽ yêu cầu 5 byte. Số nguyên 12,345 sẽ chiếm 4 byte [1 từ], cũng như số nguyên 1 và 12,345,678.

Danh sách 1000000 số nguyên chiếm bao nhiêu byte trong Python?

Điều gì tạo nên một số nguyên trong Python. Vì một số nguyên nhỏ sử dụng 28 byte nên bây giờ chúng ta đã biết tại sao một triệu số nguyên chiếm 28 MB RAM. Nhưng tại sao số nguyên Python lại chiếm nhiều bộ nhớ như vậy? .

Chủ Đề