
1 cc7756789 2015-07-01 20:23:57 +08:00 url_no_scheme = url.split('://', 1)[1] if url.split('://', 1)[1] else '' 这样也行啊! |
2 czheo 2015-07-01 21:16:47 +08:00 知道ruby的rescue的好了吧 |
5 saber000 2015-07-02 10:48:09 +08:00 |
6 jackyspy 2015-07-02 11:48:37 +08:00 这样异常真的好吗? (url.split('://', 1)+['',''])[1] (lambda x: x[1] if len(x)==3 else '')(url.split('://', 1)) |
10 laoyuan OP 哈哈,我想出来了 ([''] + url.split('://', 1))[-2] |
11 laoyuan OP @jackyspy 有什么办法能让re.match、re.search 写成比较美观的一行流呢? url_no_scheme = re.search(r'://(.+)', url).group(1) if re.search(r'://(.+)', url) else '' |
12 fburst 2015-07-02 17:32:40 +08:00 不喜欢一行的风格,难读。 |
13 picasso250 2015-07-02 19:13:48 +08:00 @laoyuan 比较好奇,PHP哪里面向对象不完全了。。。你举个例子? |
14 laoyuan OP @picasso250 我就随口那么一说,你就随便那么一听好了~ |
15 laoyuan OP 我感觉Ruby 兼有PHP 的动态灵活性和 PHP、Python 比较完全的面对对象 |
16 CodeDrift 2015-07-02 21:28:16 +08:00 我感觉这样写就失去python的特点了啊。。不太容易维护 |
17 thinker3 2015-07-02 22:20:31 +08:00 不易读 |
19 laoyuan OP @thinker3 今天还学了个一行流,感觉挺好 a = [each_num for each_num in [1, 6, 3, 7] if each_num > 5] |
20 WKPlus 2015-07-06 12:40:10 +08:00 就你这个问题而言,url.split("://", 1)[-1] 就好了 |
23 kaneg 2015-07-06 14:06:10 +08:00 关键不是能不能写在一行,而是你不应该用抛异常的方式来控制业务逻辑 |