Join devRant
Do all the things like
++ or -- rants, post your own rants, comment on others' rants and build your customized dev avatar
Sign Up
Pipeless API
From the creators of devRant, Pipeless lets you power real-time personalized recommendations and activity feeds using a simple API
Learn More
Search - "python2 python3"
-
Porting over code to python3 from python2 be like:
(Cakechat, in this case)
Day 0 of n of python 3 compatibility work:
This should be _easy_, just use six and do magic!
Day 1 of n:
Oh, true division is default instead of integer division, so I need to replace `/` with `//` in a few places.
Day 2 of n:
Oh, map in python2 behaves differently than map in python3, one returns a list, other an iterator. Time to replace it with `list(map())` then.
Day 3 of n:
Argh, lambdas don't evaluate automatically, time to fix that too.
Day 4 of n:
Why did I bother trying to port this code in the first place? It's been so long and I DON'T EVEN KNOW WHAT IS BROKEN BECAUSE THE STUFF RUNS WHEN I BREAKPOINT AND STEP THROUGH BUT NOT WHEN I RUN IT DIRECTLY?!
Day ??? of n:
[predicted]
*gives up*
I've had enough.4 -
!rant
That level of satisfaction when you successfully port a Python2 Project to Python3 and implement proper backward-compatibility - without 2to3! -
So what do you all believe the best first language is and why? I personally say Python or JavaScript because they are simple, and easy to understand8
-
Cakechat.
Not going to deny Lukalabs' credit where it's due, it's an actually good NN chatbot. Works pretty decently even on my poor old Haswell i3.
But... the things you do, Lukalabs.
First off... PYTHON 2?!?! IN ${CURRENT_YEAR}?
Jokes aside, there's a lot of things that could've been done better, or in a more compatible way, or both. Such as:
tokenized_dialog_context = imap(get_tokens_sequence, dialog_context)
tokenized_dialog_contexts = [tokenized_dialog_context]
1. imap doesn't exist in python3, but whatever, doesn't make a big difference.
2. why wrap it in another array?
3. *two* variables, and the first one just used to create the second?
I will admit, Cakechat works well, but it's one of those things where if you try to run it on anything other than the recommended settings, it's not very fun.
Right now, I'm porting it to python3 with six, and making small refactor adjustments in random places to clean up the code.
(Official live demo at https://cakechat.replika.ai/, if you want to try it out.) -
Pursuing knowledge in python, as my first "real" programming language (does bash count? 😂) - wish me luck guys!4
-
DO NOT, i repeat, DO NOT USE "scapy.all" in python3.
I spend hours figuring this one out. In one commit i added tests and other tests not connected to my tests started failing. I ran the tests several times and also checked the rng-states, but everything was the same as on the commit before...
There was one additional error message i decided to check out, which was the result of "import scapy.all" (that's a module that contains all the scapy-exports). I removed that import and used the right packages and suddenly: all tests passed.
Fuck this inconsistent piece of crapware that has its python2-files in the pip3-repo and gave me that hell to debug.2 -
Not a single year passes that the problem of python2 vs python3, as a dependency, doesn’t bite me in the ass. Node modules frequently fail to build, awscli suddenly can’t find the python it needs because homebrew apparently hard-links to python3 in Cellar... Seriously, W T F?! Fuck you python!!!! You fucking assholes!!! Fuck you and go fucking die!!
-
The worst part about switching code from python 2 to python 3:
`map(myfunc, mylist)`, behaves differently, but won't throw an error. It will just show up as nothing.3 -
!something annoying
I've always had this in the back of my head, and off lately it's eating me alive.
Why don't we just rename python3 to python and Python to python2?
no I'm not gonna alias it in my shell. I'm talking about renaming them in all the distros.
there've been talks about renaming python3 to python and marking it as the default for quite long, but nothing has come of it yet.
I get that a lot of shit is gonna go down if this happens rn, systems breaking, migrations, panic, a lot of systems still working on python2 but we need to migrate.
we've also been hearing a lot of speculation about "Python 4", from earlier this year.
WHAT IS HAPPENING UGHHHH
pls revolution now7 -
Python Developers, if you are working on a python project or Library developers(python)(3rd party) please move to Python3 there's no need to get stuck on python2. it's fucking horrible when those dependencies break.
-
Python3's asyncio is awesome.
In an IoT server we used python2 socket programming with multi-threading. Recently I have changed the socket layer to python 3 asyncio and performance was far better. I am not gonna use multi-threading anymore.
What do you guys think about asyncio?1 -
The highlighted lines are a part of a flask app I'm writing in Python2(not python3 because I'm a bit too lazy to fix few dependency errors). All functions work as expected and all templates are rendered individually, and routes are all defined. check_date checks for invalid dates like 32Jan, 2018. It returns 0 if date is valid. add_data basically returns 0 if it decides to add user data into the database(db).
The problem is that line 60 renders but lines 54,57 don't. Any ideas as to what might be going wrong.?
PS: I'm building this app for learning and not for a production environment...1 -
why google???? I mean how hard for them to update a reference document. The reference of gmail api for python2 and python2 is in EOL. The first error I found for python3 is reported in 2015 on GitHub and now is 2019. I mean, seriously the bigB_Company don't have time to update their document. I scratched my head for an hour, what the fuck did goes wrong.
-
Not my fav because I'm not proficient in anything and don't consider myself a programmer. But, I use many languages day to day as a sysadmin.
I come across Perl enough to know I don't like how their modules and dependencies work. I have the most difficulty when dealing with this. PHP, Python, Ruby, and GoLang never give me as much trouble as Perl.
Also, coming across more Python3 dependencies, dealing with older Python2 environments, as stated by many others as well, is becoming more and more painful.
Maybe all of this can be solved with some unifying virtualenv for all popular languages/environments, supported fully by the underlying OS. -
!rant && needAdvice
I want to start learning python..
My question now is: Should I go with Python 2 or 3? I heard there are some rather major differences6