


A comparison of four different ways to read files in Python
Python's text processing is a problem that is often encountered. The following article mainly introduces to you the comparison of several different methods for Pythonreading files Information, detailed sample codes are given in the article for everyone to understand and learn. Friends who need it can take a look below.
Preface
Everyone knows that Python has many ways to read files, but when a large file needs to be read, different Reading methods will have different effects. Let’s take a look at the detailed introduction below.
Scenario
Read a 2.9G large file line by line
CPU i7 6820HQ
RAM 32G
Method
Split each line read once String Operation
The following methods all use the with...as method to open the file.
The with statement is suitable for accessing resources to ensure that regardless of whether an exception occurs during use, the necessary "cleaning" operations will be performed to release resources, such as automatic closing of files after use and automatic acquisition of locks in threads. and release etc.
Method 1 The most common way to read files
with open(file, 'r') as fh: for line in fh.readlines(): line.split("|")
Running result: It took 15.4346568584 seconds
The system monitor shows that the memory suddenly jumped from 4.8G to 8.4G. fh.readlines() will save all the lines of data read into the memory. This method is suitable for small files.
Method 2
with open(file, 'r') as fh: line = fh.readline() while line: line.split("|")
Running result: It took 22.3531990051 seconds
There is almost no change in the memory, because the memory Only one row of data is accessed, but the time is obviously longer than the previous time, which is not efficient for further processing of the data.
Method 3
with open(file) as fh: for line in fh: line.split("|")
Running result: It took 13.9956979752 seconds
There is almost no change in the memory and the speed is also Faster than method two.
for line in fh treats the file object fh as an iterable, which automatically uses buffered IO and memory management, so you don't have to worry about large files. This is a very pythonic way!
Method 4 fileinput module
for line in fileinput.input(file): line.split("|")
Running result: It took 26.1103110313 seconds
The memory increased by 200- 300 MB, the slowest of the above.
Summary
The above methods are for reference only. The three recognized methods for reading large files are still the best. However, the specific situation still depends on the performance of the machine and the complexity of data processing.
[Related recommendations]
1. Code example of n lines after Python reads the file
2. Read the file using python Applets
The above is the detailed content of A comparison of four different ways to read files in Python. For more information, please follow other related articles on the PHP Chinese website!

Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

AI Hentai Generator
Generate AI Hentai for free.

Hot Article

Hot Tools

Notepad++7.3.1
Easy-to-use and free code editor

SublimeText3 Chinese version
Chinese version, very easy to use

Zend Studio 13.0.1
Powerful PHP integrated development environment

Dreamweaver CS6
Visual web development tools

SublimeText3 Mac version
God-level code editing software (SublimeText3)

Hot Topics



PHP and Python have their own advantages and disadvantages, and the choice depends on project needs and personal preferences. 1.PHP is suitable for rapid development and maintenance of large-scale web applications. 2. Python dominates the field of data science and machine learning.

Python and JavaScript have their own advantages and disadvantages in terms of community, libraries and resources. 1) The Python community is friendly and suitable for beginners, but the front-end development resources are not as rich as JavaScript. 2) Python is powerful in data science and machine learning libraries, while JavaScript is better in front-end development libraries and frameworks. 3) Both have rich learning resources, but Python is suitable for starting with official documents, while JavaScript is better with MDNWebDocs. The choice should be based on project needs and personal interests.

Docker uses Linux kernel features to provide an efficient and isolated application running environment. Its working principle is as follows: 1. The mirror is used as a read-only template, which contains everything you need to run the application; 2. The Union File System (UnionFS) stacks multiple file systems, only storing the differences, saving space and speeding up; 3. The daemon manages the mirrors and containers, and the client uses them for interaction; 4. Namespaces and cgroups implement container isolation and resource limitations; 5. Multiple network modes support container interconnection. Only by understanding these core concepts can you better utilize Docker.

In VS Code, you can run the program in the terminal through the following steps: Prepare the code and open the integrated terminal to ensure that the code directory is consistent with the terminal working directory. Select the run command according to the programming language (such as Python's python your_file_name.py) to check whether it runs successfully and resolve errors. Use the debugger to improve debugging efficiency.

Python excels in automation, scripting, and task management. 1) Automation: File backup is realized through standard libraries such as os and shutil. 2) Script writing: Use the psutil library to monitor system resources. 3) Task management: Use the schedule library to schedule tasks. Python's ease of use and rich library support makes it the preferred tool in these areas.

VS Code can run on Windows 8, but the experience may not be great. First make sure the system has been updated to the latest patch, then download the VS Code installation package that matches the system architecture and install it as prompted. After installation, be aware that some extensions may be incompatible with Windows 8 and need to look for alternative extensions or use newer Windows systems in a virtual machine. Install the necessary extensions to check whether they work properly. Although VS Code is feasible on Windows 8, it is recommended to upgrade to a newer Windows system for a better development experience and security.

VS Code is the full name Visual Studio Code, which is a free and open source cross-platform code editor and development environment developed by Microsoft. It supports a wide range of programming languages and provides syntax highlighting, code automatic completion, code snippets and smart prompts to improve development efficiency. Through a rich extension ecosystem, users can add extensions to specific needs and languages, such as debuggers, code formatting tools, and Git integrations. VS Code also includes an intuitive debugger that helps quickly find and resolve bugs in your code.

VS Code can be used to write Python and provides many features that make it an ideal tool for developing Python applications. It allows users to: install Python extensions to get functions such as code completion, syntax highlighting, and debugging. Use the debugger to track code step by step, find and fix errors. Integrate Git for version control. Use code formatting tools to maintain code consistency. Use the Linting tool to spot potential problems ahead of time.
