2024-03-19 09:02:10 +01:00
< html lang = "en" >
2024-03-19 09:10:17 +01:00
< head >
< meta charset = "utf-8" >
< meta content = "width=device-width, initial-scale=1" name = "viewport" >
< meta content = "upgrade-insecure-requests" http-equiv = "Content-Security-Policy" >
< title > Python Versions Presentation< / title >
< style >
body {
background-color: #fff;
font-family: Arial, sans-serif;
color: #000;
margin: 0;
padding: 0;
}
.step {
width: 600px;
border-radius: 10px;
padding: 40px;
color: #333;
text-align: center;
opacity: 10%;
transition: opacity 1s;
}
.step img {
opacity: 0;
transition: opacity 1s;
}
.active {
opacity: 100%;
transition: opacity 1s;
}
.active img {
opacity: 100%;
transition: opacity 1s;
}
h1 {
font-size: 2.5em;
text-shadow: 2px 2px 4px rgba(0, 0, 0, .3);
}
p {
font-size: 1.2em;
line-height: 1.4;
margin: 20px 0;
}
img {
width: 80%;
height: auto;
margin-top: 20px;
}
< / style >
< / head >
< body >
< div id = "impress" >
< div id = "slide1" class = "step" data-x = "0" data-y = "0" >
< h1 > Introduction to Python Versions< / h1 >
< p > Brief History of Python< br >
Python 2 release in 2000< br >
Python 3 release in 2008< br >
Key differences aim to make Python more powerful and easier to use< / p >
< / div >
< div id = "slide2" class = "step" data-x = "1000" data-y = "-500" >
< h1 > Syntax Differences< / h1 >
< p > Print function< br >
Python 2: < code > print "Hello, world!"< / code > < br >
Python 3: < code > print("Hello, world!")< / code > < br >
Integer division< br >
Python 2: < code > 3/2 = 1< / code > < br >
Python 3: < code > 3/2 = 1.5< / code > < / p >
< / div >
< div id = "slide3" class = "step" data-x = "2000" data-y = "-1000" >
< h1 > Unicode Support< / h1 >
< p > Python 2: Strings are ASCII by default. Unicode string with < code > u"unicode"< / code > < br >
Python 3: All strings are Unicode. Bytes type for ASCII text: < code > b"ascii"< / code > < / p >
< / div >
< div id = "slide4" class = "step" data-x = "3000" data-y = "-1500" >
< h1 > Library Changes< / h1 >
< p > Changes in standard library< br >
Python 2: < code > urllib< / code > , < code > urllib2< / code > , < code > httplib< / code > < br >
Python 3: Unified under < code > urllib< / code > package< br >
Range function< br >
Python 2: < code > xrange()< / code > for efficient looping< br >
Python 3: < code > range()< / code > is now like < code > xrange()< / code > < / p >
< / div >
< div id = "slide5" class = "step" data-x = "4000" data-y = "-2000" >
< h1 > Error Handling< / h1 >
< p > Syntax for exception handling< br >
Python 2: < code > except IOError, e:< / code > < br >
Python 3: < code > except IOError as e:< / code > < / p >
< / div >
< div id = "slide6" class = "step" data-x = "5000" data-y = "-2500" >
< h1 > Iterators and Generators< / h1 >
< p > Enhancements in iteration< br >
Python 3 introduces new behavior for dict methods < code > .keys()< / code > , < code > .items()< / code > , and < code > .values()< / code > which return views instead of lists< / p >
< / div >
< div id = "slide7" class = "step" data-x = "6000" data-y = "-3000" >
< h1 > End of Life< / h1 >
< p > Python 2 end of life in 2020< br >
No more official support or updates< br >
Encouragement to migrate to Python 3 for security and latest features< / p >
< / div >
< div id = "slide8" class = "step" data-x = "7000" data-y = "-3500" >
< h1 > Migrating from Python 2 to Python 3< / h1 >
< p > Tools like < code > 2to3< / code > can help in converting Python 2 code to Python 3< br >
Considerations for maintaining compatibility< br >
Importance of testing during migration< / p >
< / div >
< div id = "slide9" class = "step" data-x = "8000" data-y = "-4000" >
< h1 > Conclusion< / h1 >
< p > Python 3 offers significant improvements and is the future of Python< br >
Transitioning to Python 3 is essential for access to new features and continued support< / p >
< / div >
< div id = "slide10" class = "step" data-x = "9000" data-y = "-4500" >
< h1 > Resources< / h1 >
< p > Official Python documentation< / p >
< / div >
< / div >
< script src = "https://impress.github.io/impress.js/js/impress.js" > < / script >
< script >
impress().init();
< / script >
< / body >
< / html >
2024-03-19 09:02:10 +01:00