Python Tutorial: CSV Module - How to Read, Parse, and Write CSV Files

Sdílet
Vložit
  • čas přidán 26. 07. 2024
  • In this Python Programming Tutorial, we will be learning how to work with csv files using the csv module. We will learn how to read, parse, and write to csv files. CSV stands for "Comma-Separated Values". It is a common format for storing information. Knowing how to read, parse, and write this information to files will open the door to working with a lot of data throughout the world. Let's get started.
    The code from this video can be found at:
    github.com/CoreyMSchafer/code...
    ✅ 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

Komentáře • 744

  • @HellO-ly1bp
    @HellO-ly1bp Před 7 lety +780

    I've just interviewed for an amazing Python job, and if I get it I swear I will owe you so much. Everyone says this already but they're right, your videos are fantastic, thank you for all your time and effort!

    • @coreyms
      @coreyms  Před 7 lety +142

      That's great, Nina! It makes my day to hear feedback like this. I wish you the best in getting the job. Good luck!

    • @HellO-ly1bp
      @HellO-ly1bp Před 7 lety +407

      So guess what... I got the job! Big big thanks again, it means so much to me to get a job like this. I'll be sure to keep on recommending your videos!

    • @syedabdulrahmans3357
      @syedabdulrahmans3357 Před 7 lety +16

      Congrats Nina!

    • @HellO-ly1bp
      @HellO-ly1bp Před 7 lety +143

      I guess it's special to me because of the struggle it took to get here. My degree isn't in Computer Science, but I really wanted to get into programming and I thought it'd be too difficult to get my foot in the door. But the job I've just got is at a tier 1 investment bank as a Developer, so now I'll get to do something I enjoy for a job, get paid really well for it, and live/work in a beautiful part of London. Not a bad place to start!

    • @RockDavid
      @RockDavid Před 5 lety +6

      @@HellO-ly1bp Hey its been a year since you posted this. Im a CS well Computer ENgineer, and i learning this stuff for last 3 weeks goign for 3 months strait. I wanted to ask
      What did they ask about what you needed to know about Python and what are you constatnly doing at your job with Python? Like type of things your coding or editing?
      Thanks and its very late but grats on the job :)

  • @jedsonguedes
    @jedsonguedes Před 4 lety +57

    I gotta say: it's so rare to find someone with such a great ability for teaching.
    You should do another one for XML parsing.

  • @Xaminn
    @Xaminn Před 4 lety +28

    Every time I need help with a certain topic (and you've made a video on it), your video pretty much instantly solves my problem. I've spent an hour or so looking through forums and tutorials and this solved my issue in about 5 minutes. Thank you yet again for your expertise. 5/5

  • @melissamejianisonger3860
    @melissamejianisonger3860 Před 7 lety +13

    I've spent a week trying to figure this out. I watched your video and it took me 10 minutes! THANK YOU. THANK YOU.

  • @jingyuchang1885
    @jingyuchang1885 Před 6 lety +18

    I just realized whenever I have a question about python, as long as I come to your channel, I can find the answer! Thanks very much!

  • @ourcore
    @ourcore Před 2 lety +1

    I hadn't touched Python in years and I've learnt so much from your videos about requests/requests-html, reading APIs, and CSV files. Thanks so much!

  • @scochran3265
    @scochran3265 Před 4 lety +8

    What I love seeing in the below comments is people actually helping other people. There isn’t any bashing or calling each other names. Lovely.

    • @coreyms
      @coreyms  Před 4 lety +5

      Yeah, when I first started making videos I was worried about the comments, but this community of people is fantastic. Super nice and helpful.

  • @Alex-ht1oq
    @Alex-ht1oq Před 7 lety +159

    You are so good at teaching man. I appreciate every video that you produce.

    • @ryaxn_a7495
      @ryaxn_a7495 Před 6 lety

      nitty? oh, are you wondering why you have no friends? because when someone produces something absolutely amazing you don't notice it???

    • @shermanmerman4944
      @shermanmerman4944 Před 6 lety +2

      it's a compliment. get over yourself.

    • @MyTube4Utoo
      @MyTube4Utoo Před 6 lety +1

      +JDI2002 Seriously, the guy pays Corey a much deserved compliment and you manage to find fault with it?

  • @CuriousAnonDev
    @CuriousAnonDev Před 2 lety +4

    Thank You sir, this lectures are still, in 2022, faaarrr more better than other so called tutorials
    It is difficult to believe someone gave such free high quality content years ago, you helped millions!!!! Thank You so so much

  • @Vegito_Blue2
    @Vegito_Blue2 Před 5 lety +11

    Hi Corey, thanks for this video. For my interview tomorrow this is what I was looking for.

  • @tlrlutz
    @tlrlutz Před 3 lety +65

    Love the tutorials Corey they help so much in learning Python. Just thought I would update this video because the syntax is off around 8:00. The context manager "with open('new_names', 'w') as new_file:" will return a CSV file with a blank row in-between each row. The quick fix is to add "with open('new_names', 'w', newline='') as new_file:" and the issue goes away.

    • @francescob1904
      @francescob1904 Před 9 měsíci +1

      thanks you so much, I was wondering about what I did wrong...

    • @ugestacoolie5998
      @ugestacoolie5998 Před 7 měsíci +1

      @@francescob1904yeah me too and I was wondering why there was an extra line after each original line XD

  • @devslaven
    @devslaven Před 6 lety +7

    Any time I'm hunting for information on Python, my searches always lead to you and I'm never disappointed. Keep up the great work!

  • @superliang2887
    @superliang2887 Před 5 lety +23

    This video is the best, I watched many videos on CZcams, only this one really help

  • @praveen0227
    @praveen0227 Před 7 lety +4

    I am a beginner in Python but whenever i watch your tutorials i feel its easy to write programs in python.The examples are very good. I wish if you can give some exercises based on the videos you show which will help beginners like me to write more programs.

  • @auditocanarsie7355
    @auditocanarsie7355 Před 2 lety +1

    You are a natural professor. I appreciate the clarity & completeness. The text is easy to read on a desktop but was a little hard for me to read on a cell phone. If there was a way to zoom in on the text so it could be easier to read on a cell phone that is the only thing that could possible improve this video. Either that or I just need to visit my Optometrist and your videos are flawless.😀

  • @elementalneil7967
    @elementalneil7967 Před 2 lety

    I was doing this Data Science course on Coursera, and the lesson on the csv module covered a load of content in a very short time. Of course, not understanding a thing, I had to revert back to CZcams. This video clears it up really well. Thanks.

  • @NazachatGames
    @NazachatGames Před 3 lety

    Corey, you make me have two interviews and real oportunities for a job, here in Argentina.
    Thanks you a lot.
    I'm now a member of your channel, hope u the best.

  • @JV-jc7ci
    @JV-jc7ci Před rokem

    You have a very, very simple teaching style that makes it easy for newbies to understand. You're a great teacher! Thank you for the awesome FREE tutorial! This was so much more useful than online courses I am paying for!

  • @raybilton6995
    @raybilton6995 Před 6 lety +3

    Excellent series and I'm learning a lot from them. Your tutorials are my goto when I have a question. I really wish you had extended this video to include writing the two individual fields instead of just using delete. It would have helped with my needs more. I am working on a project with 20 fields in my input, but needing to write only 15 fields from the original file, and add two new fields to my 17 field output file.

  • @hamidurrahman3183
    @hamidurrahman3183 Před 6 lety +2

    Brother Corey Schafer, your parents should be proud of you. You are a genius. Great at explaining. I have watched almost all videos of this python series. They are blessing to every python beginner. Thanks for all those videos.

    • @coreyms
      @coreyms  Před 6 lety +1

      Thanks! I appreciate the kind words

  • @vergilfrans1447
    @vergilfrans1447 Před 4 lety +1

    Coding after long time...Feeling excited! Thank you for your tutorial. Easy to follow.

  • @al-farabinagashbayev5403
    @al-farabinagashbayev5403 Před 7 lety +92

    if you have new csv file with blank lines this is for you
    # Python 2
    with open('new_names.csv', 'wb') as outfile:
    writer = csv.writer(outfile)
    # Python 3
    with open('new_names.csv', 'w', newline='') as outfile:
    writer = csv.writer(outfile)

    • @MilanRihaMilan
      @MilanRihaMilan Před 6 lety

      I had the same problem :P ...newline='' works just fine. Thank you.
      Great lectures, I really like the way you teach it. ;) not too fast, not too slow, good examples, easy to understand, really brilliant teaching skills ;)

    • @jamesgu9223
      @jamesgu9223 Před 5 lety

      thank you, your way works fine.

    • @kitayuan9842
      @kitayuan9842 Před 5 lety

      cheers brother

    • @sergiomedina5520
      @sergiomedina5520 Před 4 lety

      I was spending 15 minutes to resolve it until you saved me with your comment. Thanks a lot!

    • @granberyacademia
      @granberyacademia Před 4 lety +1

      I wish I had read the comments... I couldn't understand why my code was f-ing me up

  • @GiovanniGirelli1104
    @GiovanniGirelli1104 Před 4 lety +4

    Hello Corey, I just discovered your channel today and it is awesome. Funny that you cover all the topics I am interested in (Python, SQL, Pandas, MatPlotlib etc). For people like me who never even came close to going to college/university this is awesome. One topic I would really like to see would be a tutorial on (if at all possible) automating the process of extracting tabular data from PDF's using Python and convert them into useful Excel files (something I need to do on a daily basis at work). Awesome channel, keep it up!

  • @michaelpadovani9566
    @michaelpadovani9566 Před 7 lety

    Hey thanks for posting this, I'm very new to Python (and watched a lot of your other tutorials). I'm a meteorologist that works with instrumentation datasets so i live and breathe HUGE csv files lol Hoping to use this method tutoring a local HS student for his project. Thx again and cheers from Maryland!

  • @cringeyonmain
    @cringeyonmain Před 5 měsíci

    Saved my life when doing my higher computing science coursework. Thanks so much!

  • @soumyazyx
    @soumyazyx Před 4 lety +1

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

  • @valeriewang6244
    @valeriewang6244 Před 6 lety +14

    OMG Corey you are soooooo helpfullllllllllll. I love you!

  • @luminamoon504
    @luminamoon504 Před 2 lety

    Total life saver, I needed this for a project due today, thank you so much!

  • @ronitchawla4937
    @ronitchawla4937 Před 4 lety +48

    I am taking Harvard University's online CS50 course and I could understand JACK about CSV file till I saw this vid 😂 .... Thanks a lot man 👍

  • @QuarktaschemitSenf
    @QuarktaschemitSenf Před 2 lety +1

    Thank you very much Corey. I switched job and now work with python. your videos helped a lot not to lose it in the beginning :-)

  • @kirupv
    @kirupv Před 5 lety +1

    You covered very well through explaining simple way. Thank you very much

  • @AK-kj8cc
    @AK-kj8cc Před 7 lety

    You are very thorough in your explanations. I've subbed and I hope you keep this up!

  • @aldrinmagnoa9874
    @aldrinmagnoa9874 Před 3 lety

    You make everything so simple to understand. thank you so much!

  • @madyrebecca
    @madyrebecca Před 6 lety +6

    you're videos are magic !! i love watching them , thank you so much !!!!!!!

    • @MyTube4Utoo
      @MyTube4Utoo Před 6 lety +1

      +madyrebecca Corey's videos are 'magic.' I've started on Python books that just bored me. I've used Udemy, CodeCademy, other CZcams videos, as well as countless other tutorials, but *nothing* has helped me nearly as much as Cory's tutorials. So yeah, "magic" applies here. I bet he's a warlock! lol

  • @x0gucx
    @x0gucx Před 9 měsíci

    Thank you SOOOO Much, even after 6 years this tutorial is so useful. my college professor just told use to do this with an article attachment and it's an intro class so I couldn't understand a single thing on there. THANK YOU FOR THE VIDEO TUTORIAL❣

  • @connorpayne7324
    @connorpayne7324 Před rokem

    very good, not only do you explain it very well, you explain each part of what you are doing and why. all in all a very good tutorial.

  • @mediumshrimp9696
    @mediumshrimp9696 Před 3 lety +2

    I have never seen a negative comment on your videos. You are helping me get through this coding boot camp like you'll never believe. Thanks, Mr. Corey.

    • @okayest_pianist
      @okayest_pianist Před 4 měsíci

      how'd the bootcamp go bruh

    • @mediumshrimp9696
      @mediumshrimp9696 Před 4 měsíci +1

      @okayest_pianist For me it was worth it. My class size was 17 or 19 and only two didn't get jobs right before/after graduation. Several of my classmates are going to college either while online/in person to get degrees. It is hard, our starting class size was 28. In my opinion, it's the way to go.

    • @okayest_pianist
      @okayest_pianist Před 4 měsíci

      @@mediumshrimp9696 love to hear it brother. glhf

    • @atienograce2520
      @atienograce2520 Před 3 měsíci +2

      I’ll be joining a data analytics bootcamp this September and this comment gave me hope.Yes,it won’t be all rosy but it will be worth it!Thank you!

  • @shaunakalshi4547
    @shaunakalshi4547 Před 4 lety +1

    Thank you for the tutorial.Helped me a lot in my miniproject.

  • @user-zq4ix8ps6g
    @user-zq4ix8ps6g Před 6 lety +1

    best python tutorial I ever watched

  • @danmuniz1354
    @danmuniz1354 Před 5 lety +1

    Thanks Corey. Very Helpful! Cheers!

  • @sameerk12982
    @sameerk12982 Před 6 lety +1

    Thank you very much Sir for creating such an easy to understand tutorial about reading writing csv file.

  • @MelanieCrypto
    @MelanieCrypto Před 2 lety

    refreshingly thorough and helpful ! thanks for posting this

  • @andres-beltre
    @andres-beltre Před 5 lety +1

    Thank you so much for the sucint tutorial. This precisely what I needed!

  • @drewconroy5938
    @drewconroy5938 Před 7 lety +1

    Great stuff as always - Thank you:)

  • @husseinabukar7081
    @husseinabukar7081 Před 4 lety

    Absolutely, fantastic video and simple to understand it. Many thanks for your time and efforts

  • @ozodbekulashov2325
    @ozodbekulashov2325 Před 4 lety +2

    Hello Mr Corey ! Thanks for this incredible content!

  • @trying2understand870
    @trying2understand870 Před 5 lety +3

    I really enjoyed this tutorial as well as all of your other tutorials that I have seen. I was wondering if you had shown a method for updating csv files?

  • @navidpanchi
    @navidpanchi Před 6 lety

    Thank you so much for such a wonder full series!

  • @miquelr2353
    @miquelr2353 Před 3 měsíci

    Thanks for being so clear. Learning by yourself can be like decyphering hierogrypics

  • @organizedchaos4559
    @organizedchaos4559 Před 3 lety

    Great video, very informative and helpful. You make it really easy to follow and understand

  • @emilyncozzens8309
    @emilyncozzens8309 Před rokem

    This is the best tutorial the I never found! Thanks so much!

  • @amanuelsiyum4537
    @amanuelsiyum4537 Před 5 lety +1

    Very helpful videos, keep up the good work!!!!!

  • @FisVii77
    @FisVii77 Před 6 lety

    man you are a very good python presenter, keep up the great work and vids.

  • @goldenogregames
    @goldenogregames Před 3 lety +8

    For anyone getting spaces between lines using writerow method ( using python 3 ), you need to add newline=' ' inside open like this, open('file.csv', 'w',newline=' ') as ... : (the second with open iteration)

  • @kimberlybacchia1413
    @kimberlybacchia1413 Před 5 lety +1

    SO helpful, thank you!!

  • @cyperdevelopment
    @cyperdevelopment Před 5 lety +1

    Your introduction voice is amazing!

  • @tobbysorama
    @tobbysorama Před 6 lety +1

    You are an awesome tutor!

  • @Nkraka
    @Nkraka Před 6 lety +5

    First of all Corey, I will like to say that you're an amazing teaching. You've inspired lots of people especially someone like me that is pretty new to Python. Your videos are awesome. Just keep up the good work we really do appreciate you. Thank you! With that been said, Corey, I have been searching and googling almost everywhere like stack overflow and many other python communities to see if I can at least find maybe an examples on how to work on or handle large files in python -- files ranging from 100 GB and up. Unfortunately, I haven't seen anything that actually explains the concept clear enough. So, I was wondering maybe if possible if you will consider making a video just for that purpose. Basically, the program should be able to read, chunk and write the file(s) or segments into a folder based on numbers of lines or size specified by the user. Please I will really appreciate it if you can help. Thanks in advance!

    • @coreyms
      @coreyms  Před 6 lety +1

      I don't have a video specifically on large files, but if you watch my video on File Objects, I do go over reading a file in chunks. If you search my channel or Python playlist for "File Objects" then you should find that.

  • @TheFrazerboy
    @TheFrazerboy Před 2 lety

    excellent stuff definitly helping with my masters project

  • @brunesi
    @brunesi Před rokem +1

    1:25 fun fact, when they're not comma separated, it's used dsv instead of csv. D for delimiter. In this sense, all csv files are also dsv ones. Just a tiny sidenote to another awesome video of this series.

  • @ricardolazaro1766
    @ricardolazaro1766 Před 4 lety +1

    Awesome video, I very easy to understand! Thank you for the awesome video!

  • @diggable
    @diggable Před 6 lety

    awesome, my first CSV read\write tutorial! thank you sir!
    -------------------------

  • @shivrankrishen
    @shivrankrishen Před 3 lety

    Short and down to the point.You Sir you're a God Sent.

  • @impact_k
    @impact_k Před rokem

    This is fantastic, no lies. Thank you very much

  • @datag1199
    @datag1199 Před rokem

    Great tutorial - thank you! Subscribed

  • @PrashantKumar-ks2rd
    @PrashantKumar-ks2rd Před 5 lety +1

    really helpful video thank you!!

  • @timo_b3
    @timo_b3 Před 2 lety

    Awesome, thank you corey!

  • @kgsanjuana
    @kgsanjuana Před 6 lety +8

    You are amazing! Thank you so much!!!! I have a better understanding of csv and can apply it to my school assignment.

    • @assasin101011
      @assasin101011 Před 6 lety

      don't go to school just code in your house and you can get a job in no time I promise you that. I'm 100% sure i swear this to our generation and mankind

  • @mahodaadikari4116
    @mahodaadikari4116 Před rokem +1

    Thanks for the wonderful explanation ❤💫💪🏼

  • @ruizhenmai1194
    @ruizhenmai1194 Před 6 lety

    concise and clear! thx so much

  • @converti76
    @converti76 Před 4 lety +1

    Super useful! Thanks dude!

  • @muhammadnaveedkhan6739

    Excellent work Sir, Your teaching style is awesome.

  • @egonz7194
    @egonz7194 Před 3 lety

    just what i needed for my problom set thanks bro .

  • @mjprescotti
    @mjprescotti Před 3 lety

    This video was worth the viewing I wish I had found this days ago:)

  • @prmoreiit
    @prmoreiit Před 6 lety

    Highly engaging..Kudos!!

  • @letshev
    @letshev Před 3 lety

    Corey, you are the best. Thank you.

  • @jykw1717
    @jykw1717 Před 7 lety +13

    YOU ARE GOD OF PYTHON

  • @omkarkhare4542
    @omkarkhare4542 Před 6 lety +1

    Very well explained

  • @praveenmishra5822
    @praveenmishra5822 Před 3 lety

    Nice explanation, Thanks!

  • @muralidhar40
    @muralidhar40 Před rokem

    I can not quite put the finger around it, but your teaching is magical!

  • @prabhakaransubramaniyan6538

    its very nice video and with many information and tips:)

  • @asifahussain899
    @asifahussain899 Před rokem

    U are great Corey Sir ... waiting for Ur 1 million subscribers ❤️

  • @crystalramirez2550
    @crystalramirez2550 Před rokem

    Thank you so much for these amazing videos.

  • @MexicanPickleTamarindo

    Better than my professor! Thank you.

  • @simonnguyen692
    @simonnguyen692 Před rokem

    sick tutorial man thank you

  • @sphiwemodise5713
    @sphiwemodise5713 Před 4 lety +1

    Thank you. This is helpful

  • @stillinmusic
    @stillinmusic Před 6 lety +1

    Awesome video!

  • @prateekmohanty8315
    @prateekmohanty8315 Před 2 lety

    Amazing video man , thank you so much

  • @ritheshbcanvas4963
    @ritheshbcanvas4963 Před 6 lety +1

    Super .. helpfull.. Please do this kind of real word problems..

  • @daisycarranza4034
    @daisycarranza4034 Před rokem

    Thank you so much I needed this

  • @kevinflanigan8653
    @kevinflanigan8653 Před 2 lety +1

    For Windows Python, to eliminate the blank rows between entries when writing, add the newline=''' parameter when opening the new_file for writing. "with open('new_names.csv', 'w', newline='') as new_file:"

  • @fubli4real
    @fubli4real Před 3 lety

    Nice vid, helped a lot!

  • @chescodrc
    @chescodrc Před 3 lety

    Thank you so much for this video!

  • @hadishaaben3665
    @hadishaaben3665 Před 4 lety

    You are Awesome i used thes codes as a mad man .. I loved it

  • @sahilahuja6574
    @sahilahuja6574 Před 4 lety

    Great video, good job!!

  • @karmendurbin
    @karmendurbin Před 2 lety

    Amazing explanation.

  • @Ninja-iq2xt
    @Ninja-iq2xt Před 7 lety +14

    I think and i hope you are on a path on start tutorials on pandas, and i guarantee that it could be the blockbuster series, people will love your quality videos and teachings. Their are no quality videos on pandas on youtube.

  • @andrewcekuta8627
    @andrewcekuta8627 Před 6 lety +1

    great video once again

  • @yingbowang3068
    @yingbowang3068 Před 3 lety

    exactly what i want,Thanks !!

  • @SincerelySvetlana
    @SincerelySvetlana Před rokem

    Thank you for the video 😊