Talkin' About [Infosec] News, Powered by Black Hills Information Security

Talkin' About [Infosec] News, Powered by Black Hills Information Security


BHIS Podcast: Py2K20 - Transitioning from Python2 to Python3

May 31, 2019

In this podcast (originally recored as a live webcast), we talk about the 2020 End of Life for Python2. We address what the short, and medium term impacts will likely be. Key language differences will be highlighted with techniques to modify your code to be forward compatible.


As a SANS instructor teaching SEC573: Automating Information Security with Python, over the past three years, I have steadily moved my teaching materials, examples, demonstrations and personal coding to Python3. In this process, I have had to break habits and learn new habits to write Python3 compatible scripts. I also spend considerable effort showing people how to write Python2 scripts which are forward compatible with Python3 in order to ease the transition.


The largest barrier that most people struggle with is the idea that Python3 has changed the default string encoding to UTF-8 rather than simple byte encoding. Once you learn how to manage your string objects, the remaining transition issues are mostly modern improvements to the language which most people consider advantageous to adopt.


Since Python2 will no longer have active releases after 2020, it is important to embrace the change and move forward with the Python scripting community.