Python Tutorial: File Objects - Reading and Writing to Files

Поділитися
Вставка
  • Опубліковано 28 кві 2016
  • In this Python Tutorial, we will be learning how to read and write to files. You will likely come into contact with file objects at some point while using Python, so knowing how to read and write from them is extremely important. We will learn how to read and write from simple text files, open multiple files at once, and also how to copy image binary files. Let's get started.
    The code from this video can be found at:
    github.com/CoreyMSchafer/code...
    Read more about opening in binary mode here:
    docs.python.org/3/library/fun...
    ✅ Support My Channel Through Patreon:
    / coreyms
    ✅ Become a Channel Member:
    / @coreyms
    ✅ One-Time Contribution Through PayPal:
    goo.gl/649HFY
    ✅ Cryptocurrency Donations:
    Bitcoin Wallet - 3MPH8oY2EAgbLVy7RBMinwcBntggi7qeG3
    Ethereum Wallet - 0x151649418616068fB46C3598083817101d3bCD33
    Litecoin Wallet - MPvEBY5fxGkmPQgocfJbxP6EmTo5UUXMot
    ✅ Corey's Public Amazon Wishlist
    a.co/inIyro1
    ✅ Equipment I Use and Books I Recommend:
    www.amazon.com/shop/coreyschafer
    ▶️ You Can Find Me On:
    My Website - coreyms.com/
    My Second Channel - / coreymschafer
    Facebook - / coreymschafer
    Twitter - / coreymschafer
    Instagram - / coreymschafer
    #Python

КОМЕНТАРІ • 913

  • @HarmanHundal01
    @HarmanHundal01 3 роки тому +65

    My Notes for this video. You can comment out all of it and uncomment and run one function at a time to revise what Corey has taught us:
    # While opening a file we can specify whether we are opening the file for 'reading', 'writing', 'reading & writing' or 'appending'
    # If we don't specify anything, it defaults to 'reading'
    # f = open('text.txt', 'w') # Opens a file for writing
    # f = open('text.txt', 'r+') # Opens a file for reading & writing
    # f = open('text.txt', 'a') # Opens a file for appending
    # Opens a file for reading
    f = open('C:/#Personal/Coding Projects/Proj1/Py edn/text.txt', 'r')
    print(f.name) # Returns the name of the open file
    print(f.closed) # Returns whether the file associated with the variable is closed
    print(f.mode) # Returns the mode in which it was opened i.e. 'r', 'w', 'r+', 'a'
    # All files opened using an open() command need to be closed explicitly after their use is complete. If this is not done , we can end up with leaks that cause us to run over the maximum allowed file descriptors on the system and our app can throw an error.
    f.close()
    # We can avoid this problem with a context manager as below
    # The below 'with open()' command will close the file as soon as the code has finished running or an error is thrown
    with open('C:/#Personal/Coding Projects/Proj1/Py edn/text.txt', 'r') as text_file:
    # Code goes here
    pass
    # This produces the error "ValueError: I/O operation on closed file.""
    # print(f.read())
    with open('C:/#Personal/Coding Projects/Proj1/Py edn/text.txt', 'r') as text_file:
    # This just reads all lines in the file
    text_file_contents = text_file.read()
    print(text_file_contents)
    with open('C:/#Personal/Coding Projects/Proj1/Py edn/text.txt', 'r') as text_file:
    # This returns a list that contains all lines in the file
    text_file_contents = text_file.readlines()
    print(text_file_contents)
    with open('C:/#Personal/Coding Projects/Proj1/Py edn/text.txt', 'r') as text_file:
    # This returns a line of text (not a list) at a time
    # The first time we print .readline() it returns the first line
    text_file_contents = text_file.readline()
    print(text_file_contents)
    # The second time we print .readline() it returns the second line
    text_file_contents = text_file.readline()
    print(text_file_contents)
    with open('C:/#Personal/Coding Projects/Proj1/Py edn/text.txt', 'r') as text_file:
    # This returns a line of text (not a list) at a time
    # The first time we print .readline() it returns the first line
    # Putting an 'end = '' in the return or print statement removes the newline between each result
    text_file_contents = text_file.readline()
    print(text_file_contents, end='')
    # The second time we print .readline() it returns the second line
    # Putting an 'end = '' in the return or print statement removes the newline between each result
    text_file_contents = text_file.readline()
    print(text_file_contents, end='')
    # The above methods take a lot of storage as lines get stored in memory
    # Iterating over lines in a file avoid this
    with open('C:/#Personal/Coding Projects/Proj1/Py edn/text.txt', 'r') as text_file:
    for line in text_file:
    print(line, end='')
    with open('C:/#Personal/Coding Projects/Proj1/Py edn/text.txt', 'r') as text_file:
    # Passing a number to the .read() command preads just that number of characters
    # The first time this is run, a 10 characters will be read and printed
    text_file_contents = text_file.read(10)
    print(text_file_contents, end='') # It returns '#1) This is'
    # The second time this is run, the next 10 characters will be read and printed
    text_file_contents = text_file.read(10)
    print(text_file_contents, end='') # '1) This is a test fi'
    # The same line is extended (without introducing a new line or a new returned value)
    # When we reach the end of the file, read just reads what is left and returns an empty string for the rest of it
    text_file_contents = text_file.read(1000)
    print(text_file_contents, end='')
    # The below code will print out the entire code
    with open('C:/#Personal/Coding Projects/Proj1/Py edn/text.txt', 'r') as text_file:
    size_to_read = 10
    text_file_contents = text_file.read(size_to_read)
    while len(text_file_contents) > 0:
    print(text_file_contents, end='')
    text_file_contents = text_file.read(size_to_read)
    #
    with open('C:/#Personal/Coding Projects/Proj1/Py edn/text.txt', 'r') as text_file:
    size_to_read = 10
    text_file_contents = text_file.read(size_to_read)
    while len(text_file_contents) > 0:
    # The '#' symbol in the output marks the chunks that were printed in each iteration
    print(text_file_contents, end='#')
    text_file_contents = text_file.read(size_to_read)
    with open('C:/#Personal/Coding Projects/Proj1/Py edn/text.txt', 'r') as text_file:
    size_to_read = 10
    text_file_contents = text_file.read(size_to_read)
    # The 'filename.tell()' returns the position of the file till where we've read until now
    # This returns 10, since we've read 10 characters
    print(text_file.tell())
    text_file_contents = text_file.read(size_to_read)
    # This returns 20, since we've read 10 more characters (10+10=20)
    print(text_file.tell())
    with open('C:/#Personal/Coding Projects/Proj1/Py edn/text.txt', 'r') as text_file:
    size_to_read = 10
    # Reads the first 10 characters. Read position set to 10
    text_file_contents = text_file.read(size_to_read)
    print(text_file.tell()) # Prints 10
    # Reads the next 10 characters. Read position set to 10+10=20
    text_file_contents = text_file.read(size_to_read)
    print(text_file.tell()) # Prints 20
    # filename.seek() sets the read position to whatever character we set it to. Here set to 0.
    text_file.seek(0) # Sets the read position to 0
    print(text_file.tell()) # Prints 0
    # Reads the first 10 characters. Read position set to 10
    text_file_contents = text_file.read(size_to_read)
    print(text_file.tell()) # Prints 10

    # If we try to write to a file that is opened for reading. An error is produced.
    # Error = 'io.UnsupportedOperation: not writable'
    # with open('C:/#Personal/Coding Projects/Proj1/Py edn/text.txt', 'r') as text_file:
    # text_file.write('Test')
    # If a file with this name doesn't already exist. It will be created.
    # If a file does exist, it will be overwritten
    with open('C:/#Personal/Coding Projects/Proj1/Py edn/text2.txt', 'w') as text_file:
    text_file.write('Test')
    # If you don't want to overwrite a file, use an 'append' setting by passing a lowercase a
    with open('C:/#Personal/Coding Projects/Proj1/Py edn/text2.txt', 'a') as text_file:
    text_file.write('Test')
    with open('C:/#Personal/Coding Projects/Proj1/Py edn/text2.txt', 'w') as text_file:
    text_file.write('Test') # File contains: 'Test'
    # filename.seek(position) sets the write position to the number we pass in
    text_file.seek(0)
    # If we now write something. It will be written from the newly set position.
    # It will overwrite anything in its path for as many characters it need to overwrite
    text_file.write('LN') # File contains: 'LNst'.
    # The first 2 characters from position 0 were overwritten because it was required
    # Copying from one file to another, line by line
    # This can't be done for image files. It shows an error. Invalid start byte. Copying an image file would require opening it in binary mode. We would be reading/writing bytes instead of text.
    with open('C:/#Personal/Coding Projects/Proj1/Py edn/text.txt', 'r') as text_file:
    with open('C:/#Personal/Coding Projects/Proj1/Py edn/textcopy.txt', 'w') as copy_file:
    for line in text_file:
    copy_file.write(line)
    # To read binary we change open(filename,'r') to open(filename, 'rb')
    # To read binary we change open(filename,'w') to open(filename, 'wb')
    # The below code with these changes, can copy an image file
    with open('C:/#Personal/Coding Projects/Proj1/Py edn/text.txt', 'rb') as text_file:
    with open('C:/#Personal/Coding Projects/Proj1/Py edn/textcopy.txt', 'wb') as copy_file:
    for line in text_file:
    copy_file.write(line)
    # Copying a file using chunks instead of line by line is better. This can be done by using the .read function we've studied above
    with open('C:/#Personal/Coding Projects/Proj1/Py edn/text.txt', 'r') as text_file:
    with open('C:/#Personal/Coding Projects/Proj1/Py edn/textcopy.txt', 'w') as copy_file:
    chunk_size = 10
    chunk = text_file.read(chunk_size)
    while len(chunk) > 0:
    copy_file.write(chunk)
    chunk = text_file.read(chunk_size)

  • @alashawn8
    @alashawn8 4 роки тому +363

    okay i'm at a point where i watch corey's videos just after waking up...
    for fun.

    • @sonykuriakose3808
      @sonykuriakose3808 3 роки тому +3

      U a anime boy?

    • @patricialamas429
      @patricialamas429 3 роки тому +1

      Same here

    • @arayasimms1607
      @arayasimms1607 3 роки тому +7

      i aspire to be this interested.
      at the mo the only time i look up corey's videos is 3 hours before an exam when i timely realize that i have not ~bothered~ to learn a seemingly harmless but deadly aspect of the syllabus.

    • @chatterbot___
      @chatterbot___ 3 місяці тому +1

      i wish XD

    • @MadeInPython
      @MadeInPython 2 місяці тому

      are u a masochist

  • @RameenFallschirmjager
    @RameenFallschirmjager 4 роки тому +14

    Maximum efficiency and Ultimate mastery of teaching has been shown in this video! You present your tutorials like a rabbi who read the scripture his whole life! Magnificent!

  • @PaulGrahamJR
    @PaulGrahamJR 7 років тому +363

    Thank You Corey! You are a talented and gifted Tutor. I have watched over 50 python tutorials and yours are the best example of what I have found on UA-cam.

    • @Laevatei1nn
      @Laevatei1nn 2 роки тому

      on 23:38, how does the last line of the while loop prevents infinite loop?

    • @dmg8529
      @dmg8529 2 роки тому

      @@Laevatei1nn Once u read 100 elements, curser will move to 101. If we just read once outside the loop where u read only once and length does not decrease and loop run infinitely. if you read inside a loop, curser keeps moving after every loop and once if it finds no content to read u will get zero length data, so the loop breaks.

    • @dogukanevisen7617
      @dogukanevisen7617 2 роки тому +1

      You are even better than the teachers in udemy . They don't know about being fluent.

    • @erenyayger3840
      @erenyayger3840 Рік тому +1

      I'm watching this tutorial meanwhile saw ur comment which is 5 yrs ago. He really explains things simply and easy to understand

  • @kulvirsingh819
    @kulvirsingh819 7 років тому +235

    BEST PYTHON TUTORIALS!!!!!

  • @revinar5838
    @revinar5838 4 роки тому +36

    No gimmicky loud background music or talking like he's some badass hacker...just clearly explained lessons that are easy to understand. Awesome work!

    • @____-dd1ps
      @____-dd1ps 3 роки тому +1

      when ur actually a badass hacker, but act like a normal rational person

    • @stratosvagiannis5140
      @stratosvagiannis5140 5 місяців тому +7

      what tutorial have you seen where the guy doing it talks like a "baddass hacker" I want to watch that

    • @E3T7
      @E3T7 2 місяці тому

      @@stratosvagiannis5140Lul I’m also curious

  • @henry-zh3rv
    @henry-zh3rv Місяць тому +2

    although I am discovering this 8 years after I still find it very awesome. Keep up the good work man

  • @user-zs2mc5lx1g
    @user-zs2mc5lx1g 4 роки тому +41

    The way this videos are systematically put together makes everything so easy to understand.
    Watching your videos is so helpful and motivating .
    Thank you Corey!

  • @pilaramonkgogimoshebashebi2371
    @pilaramonkgogimoshebashebi2371 6 років тому +859

    This man deserves a knighthood.
    In the name of the Warrior I charge you Ser Corey Schafer to be brave.
    In the name of the Father I charge you to be just.
    In the name of the teacher I charge you to educate the masses.
    In the name.....
    Arise Ser Corey Schafer:)

    • @user-ec5oc5fb7b
      @user-ec5oc5fb7b 5 років тому +60

      user_nickname = "This man"
      user_title = " Ser "
      user_name = "Corey Schafer "
      action_prog1 = "to be brave"
      action_prog2 = "to be just"
      action_prog3 = "to educate the masses"
      prize = "a knighthood"
      supernatural_being1 = "the Warrior"
      supernatural_being2 = "the Father"
      important_person = "the teacher"
      speech = user_nickname + " deserves " + prize + ".
      " + "In the name of " + supernatural_being1 + " I charge you " + user_title + user_name + action_prog1 +".
      " + "In the name of " + supernatural_being2 + " I charge you " + action_prog2 +".
      " + "In the name of " + important_person + " I charge you " + action_prog3 +".
      " + "In the name.....
      " + "Arise" + user_title + user_name + ":)"
      print(speech)

    • @jemrules835
      @jemrules835 5 років тому

      ?

    • @jemrules835
      @jemrules835 5 років тому +5

      @@user-ec5oc5fb7b I guess that works

    • @ragibshahariar6852
      @ragibshahariar6852 5 років тому +3

      yeah in the name of......

    • @ayubomaraden867
      @ayubomaraden867 5 років тому +1

      Ur name looks little bit girly so did you forget in the name of husband

  • @stratan9707
    @stratan9707 8 років тому +69

    Dude, I'm in love with your python series. Keep up the amazing work.

    • @coreyms
      @coreyms  8 років тому +8

      +Airth Thanks! I appreciate that. Glad you find them useful.

    • @winterambush114
      @winterambush114 6 років тому

      what version of python do you have in this video
      please reply

    • @turboromy
      @turboromy 6 років тому

      So am I. There are good instructors of different languages. Corey is the guy in python. Thanks Corey.

  • @tehemtoncode47
    @tehemtoncode47 4 роки тому +26

    Yours are some of the best python tutorials I've found on UA-cam. No bs. Very well explained. Cheers mate

  • @worstbuffs9189
    @worstbuffs9189 4 роки тому +24

    This video is so well explained. I’m a beginner and am able to follow everything perfectly!

  • @saurabhyelmame
    @saurabhyelmame 4 роки тому +4

    Never saw a mentor like you before.
    You are the one who teaches fellows like me for free.
    Thank you so much sir.

  • @officesuperhero9611
    @officesuperhero9611 6 років тому +7

    You have the clearest, best explained videos on Python. Great job.

  • @farazahmed1668
    @farazahmed1668 4 роки тому +5

    You all tutorials are stright forward and cover all aspect of a specific topic. Thank you for this channel.

  • @PoeLemic
    @PoeLemic 8 місяців тому +11

    Really helpful explanation of read & writing to files. This was quick and succinct. Helped me understand a few things that others don't cover. I love how you covering just the right stuff.

  • @Garentei
    @Garentei 6 років тому +28

    This was incrediby clear and useful. I actually started predicting what was going to happen not because it was obvious but because you explained it so well. Instant subscribe.

  • @debajyotimajumder472
    @debajyotimajumder472 5 років тому +4

    2 years Later: It's still relevant God damn it !! Thanks Corey

  • @adelachroustova8728
    @adelachroustova8728 4 роки тому +3

    Simply the BEST python tutor ever...truly life saving! And the picture of your dog just made my day 100% better!
    Huge thanks for all!!

  • @Xaminn
    @Xaminn 5 років тому +7

    This really helped me understand how to read and write to files. Thank you for your time and expertise.

  • @DataEngineeringGeek
    @DataEngineeringGeek 4 роки тому +5

    Brilliant, A good teacher can make you remember concepts with ease. I am delighted to gain from your teachings. Thanks a ton.

  • @estefaniac8260
    @estefaniac8260 5 років тому +13

    Thank you so much!!!! Your video is extraordinary. You explain these concepts clearly and thoroughly, in a very engaging way with practical examples. You made me understand this topic very quickly. Thanks again!

  • @hiseggcelency
    @hiseggcelency 4 роки тому

    This chanel is something that i will watch all the python tutorials of, and will come back from time to time to refresh what i've learned, thank you.

  • @businesscontact1664
    @businesscontact1664 3 роки тому +5

    These must be the classes from the Corey Schafer University.
    Absolutely fantastic videos !
    Probably the best and most detailed tutorials out there.

  • @AmmarAhmey
    @AmmarAhmey 2 роки тому +3

    Very clean and too the point tutorial. Thanks for this easy to grab explanation. I'm quite comfortable now as far as basic file operations are concerned.

  • @soumyazyx
    @soumyazyx 4 роки тому +6

    Thank you Corey for your time and effort. Keep spreading the knowledge.

  • @innigaadu
    @innigaadu 3 роки тому

    Man , these videos are Really good.. The author focused on actual real time use cases and tutorial makes so much sense.. Great Job

  • @user-to5vi3ns4b
    @user-to5vi3ns4b 6 років тому +5

    Your puppy is ADORABLE!! Thanks for the video

  • @alphascript
    @alphascript 5 років тому +7

    Thank you! You made the video interesting whilst keeping it simple, I am a beginner and this has helped a lot.

  • @meir6053
    @meir6053 5 років тому +8

    my teachers can learn a lot from you

  • @Ausare911
    @Ausare911 2 роки тому +1

    You always hit the depth level I need on specifics.

  • @lukexxx8215
    @lukexxx8215 4 роки тому +2

    i think i got enough to get started on my first python project but gunna keep watching one a day because they are soooo good!

  • @194711111
    @194711111 5 років тому +12

    Now I'm in a confusion that weather the creator of python or its this guy, "Corey Schafer" , made python so simple. Thank you sir for your awesome explanation

  • @chandrasekharlimit4547
    @chandrasekharlimit4547 5 років тому +11

    these are better than my 2 hours lectures... My professor sucks so much at teaching python. These are amazing and a life saver!

  • @LifeWithRilla
    @LifeWithRilla 4 роки тому +1

    Absolute killer tutorial! Thank you! I've subscribed. I'm in Lambda School learning python and this cleared up a lot. I appreciate it.

  • @anthonyanonde6331
    @anthonyanonde6331 7 років тому

    i thought i know how to read and write file, after watching this series i now know how to write and read awesome files. thanks so much

  • @aaronaaronaaron5922
    @aaronaaronaaron5922 5 років тому +6

    Corey, I am discovering me a fan of your great channel!! Thanks a lot, man

  • @himanshukarki
    @himanshukarki 5 років тому +3

    Thank you very much sir for putting so much effort in helping other by sharing your knowledge.

  • @sreethampi2018
    @sreethampi2018 4 роки тому +1

    this is the content i have been searching for a month now. damn

  • @Dark3nedDragon
    @Dark3nedDragon 5 років тому

    This helped a lot actually, thanks.
    I started learning Python a few days ago, and decided to create a game (never done coding before). I was having an issue with trying to figure out how to define a variable to a specific line (readline; didn't know that at the time), as a means of tracking the progress and associated flags as the player goes through the game. (An RPG; so far working systems, not all fully integrated: Main Menu, Combat Module, Character Class + Character Power Choosers, and Class for Enemies and scaling stats based on level)
    If any of you were wondering how to do that, or needed reinforcement for it:
    I created (using another, not shown, while loop + function), gameSave.txt file, and defined values to put into it (writing it into existence)
    And for loading I use the below to pull the values from that written file, and save them as variables as it runs
    ############# DELETE THE # IF YOU ARE TRYING TO RUN THIS IN A FILE, AND MAKE SURE TO CREATE A FILE CALLED gameSave.txt and put stuff on first 3 lines#######
    #################DELETE EVERYTHING TO THE RIGHT OF A # THAT IS MY ANNOTATION EXPLAINING IT
    global pclevel #define the variables as with the global tag, this helps avoid issues where you can't set a value to a variable while it is within a function (might not be needed in some cases)
    global pcxp
    global pcname
    pclevel = '' #this is empty in the middle, two ' ergo empty variable
    pcxp = ''
    pcname = ''
    with open('gameSave.txt', 'r') as g:
    #defined g as the term to open the file, as it is shorter and I'm feeling lazy after awhile
    gsave = g
    #gsave = g, I didn't use gsave here but figured it is best to store the values as it is a small file, would probably not recommend unless you intend to use it later
    pclevel = g.readline()
    #I stored the values in lines 1-3, and so set a value to each based on sequential readline, which is read as g (where we defined open('gameSave.txt', 'r')).readline()
    pcxp = g.readline()
    #gets the second line
    pcname = g.readline() #gets the third line
    print(pclevel)
    print(pcxp)
    print(pcname)
    #the above 'open' redefines the variables to the values that are stored within each line of the file, in sequential order, and then printing that variable will print out the stored information
    #worth noting, if you wanted to do say print('My name is ' + pcname + ' and my level is ' + pclevel)
    #you would need to do a str(pclevel) for example, to convert the stored number into a string; attempting to print an integer + a str won't work
    #i.e. print('My name is ' + str(pcname) + ' and my level is ' + str(pclevel)) #never hurts to be safe, the name SHOULD be stored as a str, but idk maybe you're R2D2 or something

  • @SyedHassanRazaBukhari
    @SyedHassanRazaBukhari 5 років тому +7

    Sir you make the best tutorials of python! I'm sure not even the paid stuff can beat this.

  • @simohillali9079
    @simohillali9079 5 років тому +3

    You're a blessing, thank you

  • @debamritak
    @debamritak 7 років тому

    I really admire you, how you can made things so simple.

  • @sunnysunilsharma
    @sunnysunilsharma 7 років тому +2

    Great tutorials Corey...Thanks a lot for making all this so simple

  • @onehtw1974
    @onehtw1974 5 років тому +60

    Very simple to understand and just filtering out the important bits alone! If you do have a dedicated tutorial in udemey, I would love to subscribe!
    Keep creating Sir Corey! :P :D

  • @rinreborn7364
    @rinreborn7364 4 роки тому +5

    my brain has exploded

  • @AbdulSamad-jm1dr
    @AbdulSamad-jm1dr 7 років тому +2

    Amazing.. am loving Python even more now ! Please dd more tutorials to Files on files like reading from IO, memory, csv files, or extracting data from unstructured format .

  • @himansuodedra2201
    @himansuodedra2201 6 років тому +2

    Wow. I've been trying to learn certain concepts in python for a while now and I've come to the conclusion that your videos are beyond amazing and super helpful. literally couldn't be more grateful

  • @ratonmagico
    @ratonmagico 6 років тому +7

    You're a truly talented teacher. Better than any online course I've tried so far.

    • @coreyms
      @coreyms  6 років тому +2

      Thanks! I appreciate that.

  • @yDkayOfficial
    @yDkayOfficial 4 роки тому +5

    This is so fkng good, tkx for the content, srly, well explained and covers a lot of ground, loved it.

  • @naderbelal8439
    @naderbelal8439 5 років тому

    @Corey Schafer
    1_ Thank you for this manual.
    2_ Don't forget to add that a common error may occur when you give the file name with the directory, basically its when Python will interpret the directory address as string, which will cause a problem with escape characters

  • @DASyam-tb7qt
    @DASyam-tb7qt 5 років тому +2

    Best python video tutorial on the Internet, bar none.
    Don't @ me.

  • @purrleterian
    @purrleterian 5 років тому +8

    you are the best when teaching python. period.

  • @krama2420
    @krama2420 8 років тому +7

    I agree with Airth. Your python series is awesome. Your videos are great. I think its the depth you go into, the many different ways to do it, and the way you should do it. Oh and so much "energy" and "flow" in the videos.

  • @khaled-dz8357
    @khaled-dz8357 17 днів тому

    What a hell.is that rb wb. Its been long time watching python tutoriels and never see reading and writing in files with binary system. Corey you are God of python. Really you deserve Million thanks. Please keep going and uploading new videos.

  • @sandeepmishra2
    @sandeepmishra2 5 років тому +2

    This is best youtube channel to learn python!!

  • @RemovedByAdmin
    @RemovedByAdmin 7 років тому +7

    finally someone that explains it properly! Thank you :)

  • @2kpresident363
    @2kpresident363 4 роки тому +4

    This man deserves Computer Science professor of MIT

  • @aluin3770
    @aluin3770 3 роки тому +1

    Very detailed, an excellent example for what a tutorial should look like 👍 keep being so awesome

  • @finix7419
    @finix7419 Рік тому

    I'm learning so much from you tutorials without getting frustrated ,thank you so much !

  • @JoeEvansSound
    @JoeEvansSound 7 років тому +16

    *** Thanx Corey - Excellent Video. Nicely spoken, great pace, very informative and easily understandable.
    Great work - thank you! :¬)

  • @praveshjangra07
    @praveshjangra07 8 років тому +7

    awesome tutorial :)

    • @coreyms
      @coreyms  8 років тому +2

      +Pravesh Jangra Thanks! Glad you enjoyed it.

  • @firstincometrader2281
    @firstincometrader2281 3 роки тому

    Wow. This channel is going to be an epic for Python learning. Every topic covers the crux of the items cleverly

  • @whoknows.201
    @whoknows.201 3 роки тому

    I've just come across this and you are about to become my saviour because I'm about 10 hours behind on my controlled assessment and have no idea what I'm doing

  • @WordbreweryLanguages
    @WordbreweryLanguages 6 років тому +3

    Love your Python (and other) videos - some of the best coding tutorials on UA-cam. Very clear, detailed, in-depth explanations that get right to the point. Great work!
    Ideas for future tutorials:
    -Much more on classes, including composition, polymorphism, when to use classes vs other data structures, etc.
    -Enums and when to use them (introduced recently in Python)
    -Examples of when to choose different data structures and how to implement each.
    - Oauth and working with APIs through Python
    -PDB / debugging
    -Testing web apps
    -Selenium and Python
    -Beautiful Soup
    -Pytest
    -Pylint
    -TDD
    -Encapsulation / structuring code in python effectively
    -Advanced namespaces / modules / packages
    -Flask (advanced or in-depth, eg explaining the app context and how working with Flask blueprints is different from the usual modules and if ‘__name__’ == ‘__main__’
    - Intermediate/ Advanced object oriented programming
    - Refactoring and code smells
    - Functional programming
    - Advanced Sublime Text
    - Workflow, eg syncing dev environments across different platforms, version control for dotfiles, etc.
    - Productivity tips
    - Design patterns
    - Medium/low-level networking and web programming with Python (understanding HTML headers, session objects / cookies, HTTP protocol, servers, AJAX and REST APIs, etc.
    - Setting up a personal web server, mail server, file server, owncloud, etc.
    - Executing JavaScript with Python
    - Setting up a LAN / basic home networking
    - Scripting and automation tips/ideas/anything
    - MongoAlchemy and/or Pymongo and/or SQLAlchemy
    - Building a web app with Python/Flask backend and JavaScript/Angular frontend
    - Advanced regular expressions (maybe covered in your newest video)-e.g., escaping regex strings
    - String templating, text replacement, etc.
    - Collections module
    - Modules that are useful or should be in the standard library but are not
    - Advanced / in-depth primitive operations, e.g. string and dict methods.
    Thank you!

  • @prateekyadav9811
    @prateekyadav9811 5 років тому +33

    "...it didn't delete the rest of the content" HAHA

  • @maleloaizac
    @maleloaizac 3 роки тому

    No questions, just infinite thanks. Subscribed and recommended.

  • @Broadmoore
    @Broadmoore 3 роки тому

    I finally found someone who makes sense. Corey, this is amazing thank you!

  • @hasanrumman2422
    @hasanrumman2422 5 років тому +12

    16:10 Careful! File contents(if exists) are erased the moment it's opened in write mode.

  • @americaexpointernational5277
    @americaexpointernational5277 8 років тому +5

    More videos please!!

  • @user-ow5hb4bu9z
    @user-ow5hb4bu9z 3 роки тому +1

    My brother , Thank you ! You are a great educator of our time !!!!

  • @gedport6771
    @gedport6771 4 роки тому

    Thankyou I am able to Tweek this into my file today as an option for the user to read rules and save their text to be used later. Thumbs up :)

  • @YSingh-fo2ex
    @YSingh-fo2ex 7 років тому +42

    PLEASE POST SOME TUTORIAL ON NETWORK PROGRAMMING USING PYTHON....THANKS IN ADVANCE !!

    • @LionelTellem
      @LionelTellem 7 років тому +1

      ARe you an ethical hacker?

    • @aminvogue
      @aminvogue 6 років тому +1

      Udemy has just the right one for you "ON NETWORK PROGRAMMING USING PYTHON." they are very affordable too.

    • @atharva741
      @atharva741 4 роки тому

      ua-cam.com/video/Lbfe3-v7yE0/v-deo.html

  • @aryamanverma644
    @aryamanverma644 6 років тому +5

    How would I read/print a random line from the file

    • @angelcaru
      @angelcaru 3 роки тому

      Use f.readline() in a loop (or for line in f: ) to make a list of all the lines and then use random.choice() to select a random element of that list

  • @yihongli350
    @yihongli350 2 роки тому

    Your video made EVERYTHING CLEAR for me!!!!!!!!

  • @shirajsharma8085
    @shirajsharma8085 4 роки тому +1

    respected sir you are a legend one of the finest tutorial til date i wish i had a teacher like you to guide me on coding thank you sir for your help

  • @Zamai
    @Zamai 7 років тому +4

    Thx for vids signed up to became your patron!
    BTW, what about that tmp files and in memory files vid, is it on your channel?

    • @coreyms
      @coreyms  7 років тому +2

      Thanks, Alex! I really appreciate that. I haven't recorded the tmp and in-memory files video yet, but I still plan on putting one together in the near future after I get some other videos in my list finished up and published.
      Thanks again!

    • @Zamai
      @Zamai 7 років тому

      Looking forward :)

  • @son9673
    @son9673 8 років тому +4

    Great tuts. I assume this is for python 3? I tried to do this in 2.7 and it doesn't seem to like the syntax with the "end". I guess I should start transition to 3. Overall like your style of teaching.
    Edit- I got it to work if in python 2.7, you have do an import -> from __future__ import print_function

    • @coreyms
      @coreyms  8 років тому

      Sorry for the late reply. Yes, this is Python 3. It took me a long time to transition over too, but since it is the recommended version now it is a good idea to switch over if possible.

    • @haoyu6889
      @haoyu6889 6 років тому

      The same thing happened to me lmao. I checked my version and it is 3.6. Now im totally lost. I can use it in IDLE but it failed in Sublime

  • @gauthamambethkar4483
    @gauthamambethkar4483 3 роки тому

    Thank you so much Corey. You are the best teacher I have ever seen.

  • @dragnar4743
    @dragnar4743 2 місяці тому

    Thanks for explaining everything in such a simple manner

  • @judet_17
    @judet_17 6 років тому +3

    OMG THS IS M FAVURIT VEDIO EVVRR

  • @janicejose5809
    @janicejose5809 3 роки тому +3

    How do I write and read a file simultaneously .I tried to do but after every read operation its simultaneously writing the same content the no of times i run the prog which is not what i want .Please help !! Thank you !

    • @Femshot
      @Femshot Місяць тому

      Well. Hope this isn't too late 😅
      But you need to control the file pointer on the open file object, when you open a file in r+ or w+ mode the file pointer starts from the top of the file (0) so you'll need to get it to the end of the file before writing new data

  • @mikevogt71
    @mikevogt71 5 років тому +1

    Thanks Corey! Very informative and I plan on seeing more! I owe you one...

  • @SampathIndikaIroshan
    @SampathIndikaIroshan 3 роки тому

    Watching this in 2021.
    Still great and relevant.
    Thanks.

  • @rahulthaker694
    @rahulthaker694 5 років тому +3

    for line in f:
    how does it take in one line like we havent specified anything
    line why doesnt line iterate through each character .
    how does it iterate through each line
    can someone please help me? :)

    • @vaibhavdumaga7229
      @vaibhavdumaga7229 4 роки тому

      yes same doubt buddy!!!!!

    • @VictorOlet
      @VictorOlet 4 роки тому +1

      @@vaibhavdumaga7229 Same issue here. But I think it is in-built and so the for-loop function automatically knows. From documentation, it says that some file objects are iterable, meaning when used in a loop, it automatically "knows" how to go to the next item in the file object.Don't fully understand, but it seems to be in built so it's automatic. See for yourself here under iterable: docs.python.org/3/glossary.html#term-iterable

  • @michaelcdarby
    @michaelcdarby 4 роки тому +3

    Yo.... this is much simpler in python than in java

  • @marlonholland955
    @marlonholland955 4 роки тому +1

    one video i watch leads to the next and to the next. i love it.

  • @edgarlip2
    @edgarlip2 4 роки тому +1

    this was awesome ! waiting for the more advances topics that you suggested !!!

  • @joneswafula
    @joneswafula 4 роки тому +9

    Who's here from UoPeople?

  • @jordanwalker7076
    @jordanwalker7076 7 років тому +3

    Thumbs up for puppy pic

  • @Johniakson
    @Johniakson 5 років тому +1

    You are the best teacher! Excellent videos. Thank you!

  • @LeirbagIII
    @LeirbagIII 2 роки тому

    This is pure gold!!! Added to bookmarks!

  • @tejwantsandhu595
    @tejwantsandhu595 3 роки тому

    Hello, Corey, You are the best. I started learning Python recently and your videos are very helpful. Thanks.

  • @user-rl1yl2ee8z
    @user-rl1yl2ee8z 7 років тому

    Your tutorials are the best! So much useful information.
    Thanks a lot!

  • @elenachen5146
    @elenachen5146 4 роки тому +1

    Love the turtorials and your dog ! So cute !!!

  • @ericadhikari1598
    @ericadhikari1598 2 роки тому

    man thanks for all these videos you are really a king

  • @sondaika12
    @sondaika12 3 роки тому

    What an excellent playlist. Thank you very much Mr Corey.

  • @_Documentation
    @_Documentation 5 років тому +1

    Corey, Simply the best!

  • @rock_it_with_asher
    @rock_it_with_asher 4 роки тому +2

    I appreciate your excellent effort, which saved me both time and frustration!! I'll spread the word:)

  • @kostiantynkarzhanov9216
    @kostiantynkarzhanov9216 Рік тому +1

    Thank you Corey! Very cool lesson! Clear and useful 💛