I have a function like this:
def __init__(self, out_file='out.csv', tmp_folder=None):
self.tmp_folder = tmp_folder if tmp_folder != None else join(getcwd(), '__tmp__')
I was wondering if ther exists a smarter way to do it, something like js:
self.tmp_folder = tmp_folder || join(getcwd(), '__tmp__')
asked Apr 30, 2014 at 2:16
opensas
64.4k91 gold badges270 silver badges423 bronze badges
2 Answers 2
Since None evaluates to False, you could always do:
def __init__(self, out_file='out.csv', tmp_folder=None):
self.tmp_folder = tmp_folder or join(getcwd(), '__tmp__')
Note however that this will assign self.tmp_folder to join(getcwd(), '__tmp__') if tmp_folder is any falsey value (False, 0, [], {}, etc.)
answered Apr 30, 2014 at 2:18
user2555451
Sign up to request clarification or add additional context in comments.
1 Comment
opensas
Gee, as soon as I finished writing the example I saw it, jeje
Yes, like this:
self.tmp_folder = tmp_folder or join(getcwd(), '__tmp__')
You just use or instead of ||
answered Apr 30, 2014 at 2:18
shaktimaan
12.1k2 gold badges32 silver badges33 bronze badges
Comments
lang-py
tmp_folder or join(getcwd(), '__tmp__')