How to create files in Python

Learning how to create a file in Python will open up a huge number of coding possibilities. This is useful if you want to store data to provide consistency between uses. However, it’s also extremely useful for manipulating data, for scraping content, and much more.

The good news is that, as ever, Python makes this process extremely simple.

How to create a file in Python in three lines of code

Use the following code to create a file called “BabyFile.txt” and to write “Hello der!” into it:

Code
my_file = open("BabyFile.txt", "w+")

my_file.write("Hello der!")

my_file.close()

As you can see, we declare our new variable myFile and then use the built-in open and write commands to open and write to the file. The “w+” tells Python that we will be writing a new file. If the file already exists, then this will write over the file. If you replace this with a “w” then the file will be created only if it doesn’t already exist.

myFile.write can be used just like we would use print.

Note that we always need to close the file at the end for the changes to stick.

How to write to add and more

Now you know how to create a file in Python, you may be wondering how to do other things like editing those files, deleting them, or even copying and pasting them!

If you wish to append data to your file (add more information), then you use the precise same method but use “a+” instead of “w+”

Code
my_file = open("BabyFile.txt", "w+")

my_file.write(“And goodbye!”)

my_file.close()

This won’t add a new line though, so make sure to include “\n” symbol if you want to do that.

If we want to read the file, we do so like this:

Code
my_file = open("BabyFile.txt", "r")

file_contents == my_file.read()

Deleting and moving files

One thing you need to be able to do if you want to know how to create a file in Python, is to check whether it already exists. This is important as you can otherwise try to overwrite/edit/delete a file that isn’t there!

To do this, you’ll need to use the os module that thankfully comes as default with Python. Just import it, and then you can use: path with isfile(), isdir(), or exists() to get the information you need!

Code
os.path.isfile(“your file here”)

You can rename files using the os module too. This is extremely easy:

Code
os.rename(“old file path and name”, “new file path and name”)

The cool thing is if you rename the path, this will actually move the file to that directory! Alternatively, you can do this with the shutil module:

Code
shutil.move(“old file path and name”, “new file path and name”)

Finally, you can simply delete files using os.remove().

What next?

So there you have it! That’s how to create a file in Python, update it, rename it, and destroy it. The circle of life!

Of course, this is only really scratching the surface of what you can accomplish with Python. Python is a brilliantly powerful and flexible programming language, so why not take an online course and become a pro? We’ve broken down the best online Python courses:

See also: Best online Python courses

The list includes beginner courses, intermediate, and advanced! It also includes options that are suitable for hobbyists and professionals alike.


For more developer news, features, and tutorials from Android Authority, don’t miss signing up for the monthly newsletter below!