プログラミング言語、Pythonで1行でif文を書きたいと思っています。
class Test(object): def __init__(self, url): self.url = url def access(self, url=''): self.url = url if url
上記の記述だと、if文のところで、シンタックスエラーとなってしまいます。
なので下記のように記述してみるのですが、下記の記述もシンタックスエラーになってしまいます。
class Test(object): def __init__(self, url): self.url = url def access(self, url=''): self.url = url if url else pass
なので、下記のように記述する、期待するような動きをしてくれます。
class Test(object): def __init__(self, url): self.url = url def access(self, url=''): self.url = url if url else self.url
ですが、上記の書き方はあまり好きではないので、結果下記の記述をした方がいいとなってしまいます。
class Test(object): def __init__(self, url): self.url = url def access(self, url=''): if url: self.url = url
なぜ、1行でif文を書くと、elseがないとダメなのでしょうか?
また、なぜ、passは使えないのでしょうか??
優しく教えていただけると嬉しいです。
Python3.7.5を使ってます。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2021/04/17 07:06 編集
2021/04/17 07:06