Redian新闻
>
python代码写成这样,什么鬼阿。
avatar
python代码写成这样,什么鬼阿。# Programming - 葵花宝典
w*n
1
是什么来着? 我搭个2层楼高的架子它能张上吗,
可以的话我就用它来给2楼遮阳了,还能有果实吃
avatar
b*1
2
好多文章点进去都看不了。safari出来的是空白页,chrome出来的是“no data
received"。用虚拟机上的ubuntu就没有这个问题。还有人有这样的问题吗?有解决方
案没有?我的版本是10.7.
avatar
t*r
3
def minArea(self, image, x, y):
a, b = (max(I) - min(I) + 1
for image in (image, zip(*image))
for I in [[i for i, row in enumerate(image) if '1' in row]])
return a * b
脚本語言太恶心了
avatar
z*n
4
无限生长型,未必能一直爬到那么高吧

【在 w****n 的大作中提到】
: 是什么来着? 我搭个2层楼高的架子它能张上吗,
: 可以的话我就用它来给2楼遮阳了,还能有果实吃

avatar
I*t
5
用opera和ff试试
avatar
d*e
6
这个是写代码的人的问题。

【在 t**r 的大作中提到】
: def minArea(self, image, x, y):
: a, b = (max(I) - min(I) + 1
: for image in (image, zip(*image))
: for I in [[i for i, row in enumerate(image) if '1' in row]])
: return a * b
: 脚本語言太恶心了

avatar
w*n
7
是谁说不掐枝得用电线杆,好象是杯子说的,
无限生长型的英文是unlimit grown tomato吗。

【在 z*********n 的大作中提到】
: 无限生长型,未必能一直爬到那么高吧
avatar
b*1
8
试了火狐,还是一样。太怪了,别的OS都没这问题。

【在 I*********t 的大作中提到】
: 用opera和ff试试
avatar
l*n
9
must have a good reason

【在 t**r 的大作中提到】
: def minArea(self, image, x, y):
: a, b = (max(I) - min(I) + 1
: for image in (image, zip(*image))
: for I in [[i for i, row in enumerate(image) if '1' in row]])
: return a * b
: 脚本語言太恶心了

avatar
g*o
10
两层楼我觉得是有可能的
indeterminate tomato

【在 w****n 的大作中提到】
: 是谁说不掐枝得用电线杆,好象是杯子说的,
: 无限生长型的英文是unlimit grown tomato吗。

avatar
b*1
11
试出来了,应该是家长控制的问题。mac os 有bug.

【在 b*****1 的大作中提到】
: 好多文章点进去都看不了。safari出来的是空白页,chrome出来的是“no data
: received"。用虚拟机上的ubuntu就没有这个问题。还有人有这样的问题吗?有解决方
: 案没有?我的版本是10.7.

avatar
z*e
12
脚本语言需要code review which意思就是,可读性太差
fp也差不多
avatar
D*1
13
我种过一种樱桃西红柿,那时还不认识刚刚,不知整枝为何物,结果任其疯长,到最后
两楼高没有,但至少也有一楼多

【在 w****n 的大作中提到】
: 是什么来着? 我搭个2层楼高的架子它能张上吗,
: 可以的话我就用它来给2楼遮阳了,还能有果实吃

avatar
s*g
14
X11 + rxvt-ml

【在 b*****1 的大作中提到】
: 好多文章点进去都看不了。safari出来的是空白页,chrome出来的是“no data
: received"。用虚拟机上的ubuntu就没有这个问题。还有人有这样的问题吗?有解决方
: 案没有?我的版本是10.7.

avatar
l*n
15
oop可读性很差吧。fp可读性好

【在 z****e 的大作中提到】
: 脚本语言需要code review which意思就是,可读性太差
: fp也差不多

avatar
c*p
16
去年我的长到两米多高,还没到二楼
你多上点激愤估计有希望
avatar
z*e
17

快给我拉倒,一个全部都是func可以整死一堆人
pure oop的可读性绝对强过pure fp
否则就没有pure oop什么事了
就是一堆人搞不定fp,所以弄出了oop

【在 l**********n 的大作中提到】
: oop可读性很差吧。fp可读性好
avatar
w*n
18
哦, 原来这样, 能遮阳至少得5米,搭个那么高的架子不容易,算了

【在 c***p 的大作中提到】
: 去年我的长到两米多高,还没到二楼
: 你多上点激愤估计有希望

avatar
l*n
19
fp没有状态,当然容易理解。oop更难理解

【在 z****e 的大作中提到】
:
: 快给我拉倒,一个全部都是func可以整死一堆人
: pure oop的可读性绝对强过pure fp
: 否则就没有pure oop什么事了
: 就是一堆人搞不定fp,所以弄出了oop

avatar
w*n
20
谢了,有这英文我已经放狗搜索了。
居然发现big zac这个巨无霸品种,你们居然没人种这个去比赛。。

【在 g*********o 的大作中提到】
: 两层楼我觉得是有可能的
: indeterminate tomato

avatar
z*e
21

这不好容易理解,这叫相对容易实现
但是同时io变得很麻烦了
这叫简单?
我今天刚处理完一个swift的map reduce
简直是joke

【在 l**********n 的大作中提到】
: fp没有状态,当然容易理解。oop更难理解
avatar
g*o
22
哇!!!4棒!!!!记下了!!!

【在 w****n 的大作中提到】
: 谢了,有这英文我已经放狗搜索了。
: 居然发现big zac这个巨无霸品种,你们居然没人种这个去比赛。。

avatar
z*e
23
swift现在也跟python, ruby, scala这些一样了
_, $0, $1开始满天飞了
avatar
m*6
24
谁去买种子?我跟~~~

【在 w****n 的大作中提到】
: 谢了,有这英文我已经放狗搜索了。
: 居然发现big zac这个巨无霸品种,你们居然没人种这个去比赛。。

avatar
l*n
25
需要状态的地方就oop啊,但是fp显然更好维护

【在 z****e 的大作中提到】
: swift现在也跟python, ruby, scala这些一样了
: _, $0, $1开始满天飞了
: 日

avatar
z*e
26

你无非想对付多线程并发冲突嘛
这个用一个actor不就行了
fp要是更好维护,就没有actor什么事了
历史证明其不好维护
单线程是joke,除了ui,我一概不搞单线程
有几个core上几个thread

【在 l**********n 的大作中提到】
: 需要状态的地方就oop啊,但是fp显然更好维护
avatar
z*e
27
顺便说一下,状态这个什么意思啊?
多少人能够正确理解状态的?
这种混蛋概念真是误人子弟,一天到晚屁事不做
就在这种鸟事上倒腾,翻来覆去搞什么code review
难怪股价崩了
avatar
l*n
28
但是显然数据单向流动更好维护,immutubility比mutable更好维护

【在 z****e 的大作中提到】
: 顺便说一下,状态这个什么意思啊?
: 多少人能够正确理解状态的?
: 这种混蛋概念真是误人子弟,一天到晚屁事不做
: 就在这种鸟事上倒腾,翻来覆去搞什么code review
: 难怪股价崩了

avatar
z*e
29

我不否认啊,问题是为什么要说immutable呢?
msg不就好了,msg就是immutable的
不需要理解immutable的概念就能做了
vert.x做得多简单,不像fp那样,概念满天飞,简直就是一joke
认真想想,fp那些鸟蛋概念其实都是扯蛋

【在 l**********n 的大作中提到】
: 但是显然数据单向流动更好维护,immutubility比mutable更好维护
avatar
d*e
30
_就是一个占位符。这个就是炫鸡,如果影响到可读性,代码必须重构。
$0, $1这个其实不是好习惯,
scala里面case class可以解决,但是data piplein里面,由于scala map继承 java
map entry想法,很屎,只有转化成为一个二元tuple.
python里named tuple,和a,b = tuple可以解决。基本上,python 应该很少会出现_1,
_2。 要是满天飞可以fire了。
swift不清楚,如果满天飞,程序员可火掉。

【在 z****e 的大作中提到】
: swift现在也跟python, ruby, scala这些一样了
: _, $0, $1开始满天飞了
: 日

avatar
d*e
31
这个就是一行流。
什么东西都要一行搞定。

【在 l**********n 的大作中提到】
: must have a good reason
avatar
d*e
32
显然脚步语言不是给低手用的。

【在 z****e 的大作中提到】
: 脚本语言需要code review which意思就是,可读性太差
: fp也差不多

avatar
d*e
33
fp一个funciton parameter.oop整出20个设计模式。你给我谈可读性?

【在 z****e 的大作中提到】
:
: 我不否认啊,问题是为什么要说immutable呢?
: msg不就好了,msg就是immutable的
: 不需要理解immutable的概念就能做了
: vert.x做得多简单,不像fp那样,概念满天飞,简直就是一joke
: 认真想想,fp那些鸟蛋概念其实都是扯蛋

avatar
d*i
34
这个就是所谓的追求“代码简洁”,变成这副屎样,Python之父Guido说过什么所谓的
fp啊,什么list comprehension啊,都千万不要用,都是虚晃一些生造的概念骗人的,
老老实实用for loop最好。

【在 t**r 的大作中提到】
: def minArea(self, image, x, y):
: a, b = (max(I) - min(I) + 1
: for image in (image, zip(*image))
: for I in [[i for i, row in enumerate(image) if '1' in row]])
: return a * b
: 脚本語言太恶心了

avatar
l*n
35
没有括号的语言就是耍流氓

【在 d****i 的大作中提到】
: 这个就是所谓的追求“代码简洁”,变成这副屎样,Python之父Guido说过什么所谓的
: fp啊,什么list comprehension啊,都千万不要用,都是虚晃一些生造的概念骗人的,
: 老老实实用for loop最好。

avatar
t*r
36
oop和imperative programming不等价, fp语言也可以oop

【在 l**********n 的大作中提到】
: 需要状态的地方就oop啊,但是fp显然更好维护
avatar
t*r
37
最后一句的结论太极端了

【在 z****e 的大作中提到】
:
: 我不否认啊,问题是为什么要说immutable呢?
: msg不就好了,msg就是immutable的
: 不需要理解immutable的概念就能做了
: vert.x做得多简单,不像fp那样,概念满天飞,简直就是一joke
: 认真想想,fp那些鸟蛋概念其实都是扯蛋

avatar
z*e
38

那怎么debug啊?
log里面exception都是某某某行出错了
你一行?您逗吧?

【在 d******e 的大作中提到】
: 这个就是一行流。
: 什么东西都要一行搞定。

avatar
z*e
39


脚本是装逼用的

【在 d******e 的大作中提到】
: 显然脚步语言不是给低手用的。
avatar
z*e
40

快给我拉倒
一个反射就可以把function塞入参数
你来20个模式?哪20个?
列举出来我看看

【在 d******e 的大作中提到】
: fp一个funciton parameter.oop整出20个设计模式。你给我谈可读性?
avatar
z*e
41

静态类型
括号
1st class citizen func
java不搞这些都是很有道理的
怎么看怎么对
防止脑残装逼
否则就是随地大小便
一天到晚就给人擦屁股

【在 l**********n 的大作中提到】
: 没有括号的语言就是耍流氓
avatar
z*e
42

不完全等价
但是在某些哲学上冲突
比如万事万物都是对象
万事万物都是func
后者贼78扯蛋
导致连io都出问题
因为无法完成封装
oop虽然封装起来很繁琐
但是可以很好滴完成封装

【在 t*********r 的大作中提到】
: oop和imperative programming不等价, fp语言也可以oop
avatar
t*r
43
不光是这几点,每次上新的codebase有了静态类一般很快能上手
Python/JS要看半天才能开码

【在 z****e 的大作中提到】
:
: 不完全等价
: 但是在某些哲学上冲突
: 比如万事万物都是对象
: 万事万物都是func
: 后者贼78扯蛋
: 导致连io都出问题
: 因为无法完成封装
: oop虽然封装起来很繁琐
: 但是可以很好滴完成封装

avatar
t*r
44
你喷的太狠了
FP也没要求万事万物都是函数

【在 z****e 的大作中提到】
:
: 不完全等价
: 但是在某些哲学上冲突
: 比如万事万物都是对象
: 万事万物都是func
: 后者贼78扯蛋
: 导致连io都出问题
: 因为无法完成封装
: oop虽然封装起来很繁琐
: 但是可以很好滴完成封装

avatar
z*e
45

,
你这说的不就是code review那一套么?
动不动就是重构,动不动就是要人去遵守这些规则
如果不搞code review,这些垃圾在代码里面
你能发现得了么?这些代码可都能通过unit test哦
机器没问题,有问题的是人,所以最后不得不让人去伺候人写代码
这不是胡闹嘛,人多贵的成本,让人去伺候人的话,那成本立马翻倍
难怪这样瞎搞的公司最近股价一个比一个跌得凶
swift里面比较烂的代码,都跟过份自由有关,比如$0,$1,_这种
不过swift单平台,不用顾及其他人感受,想改就改
所以现在swift越改越像java
以前都是class var,现在一律static var
case class就是一个joke
居然by default有set/get
这是何苦?写个set/get无非就是点几个按钮
让ide自动生成这点事,非要定义一个名词,叫什么case class
搞得好像很高大上,其实毫无意义
case class绝对没有set/get那么简单直接明了
皇帝的新装莫过于如此
在一些无所谓的事情上故弄玄虚

【在 d******e 的大作中提到】
: _就是一个占位符。这个就是炫鸡,如果影响到可读性,代码必须重构。
: $0, $1这个其实不是好习惯,
: scala里面case class可以解决,但是data piplein里面,由于scala map继承 java
: map entry想法,很屎,只有转化成为一个二元tuple.
: python里named tuple,和a,b = tuple可以解决。基本上,python 应该很少会出现_1,
: _2。 要是满天飞可以fire了。
: swift不清楚,如果满天飞,程序员可火掉。

avatar
z*e
46

那就不是纯粹的fp了
越是越脆的fp越希望你封装彻底
否则副作用明显,到处是状态
那与oop何异?
不过纯粹fp也搞不下去,所以最后还是从了actor
which就是到处都是副作用的fp,其实就是oop
封装最后还是由一个object/actor来完成

【在 t*********r 的大作中提到】
: 你喷的太狠了
: FP也没要求万事万物都是函数

avatar
t*r
47
fp处理一些实际的问题的确不方便,所以大部分FP语言最终没做到彻底纯粹。但fp的精
髓在于只有运算算法而不跟世界状态打交道的时候(比如编译,算model),编辑器可以
通过能够利用语言只有值而没有变量这个设定实现很多在imperative语言里面不能实现
或很难实现的功能,比如https://en.wikipedia.org/wiki/Pattern_matching,
automated
proof checking https://en.wikipedia.org/wiki/Coq。你要把这种语言扩展到带OO
也可以,只是object没有setter对于一般人来说很难用。
但如我所说,FP的对立是imperative,我说的这几点不适用与imperative language

【在 z****e 的大作中提到】
:
: 那就不是纯粹的fp了
: 越是越脆的fp越希望你封装彻底
: 否则副作用明显,到处是状态
: 那与oop何异?
: 不过纯粹fp也搞不下去,所以最后还是从了actor
: which就是到处都是副作用的fp,其实就是oop
: 封装最后还是由一个object/actor来完成

avatar
g*g
48
通配符这种东西用来写点测试身心愉快。我老现在用 Groovy写点 unit test, mock的
时候用这通配符要比 Java里调用 any()舒服多了。
但产品环境里这些灵活性就是找死了。

【在 z****e 的大作中提到】
:
: 那就不是纯粹的fp了
: 越是越脆的fp越希望你封装彻底
: 否则副作用明显,到处是状态
: 那与oop何异?
: 不过纯粹fp也搞不下去,所以最后还是从了actor
: which就是到处都是副作用的fp,其实就是oop
: 封装最后还是由一个object/actor来完成

avatar
z*e
49

OO
imperative对应的就是declarative啊
fp总是标榜自己declarative而已
但是declarative可远远不止fp一个p罢了
虽然fp和oop不完全重叠,但是在某些哲学思想上是冲突的
我前面已经说了
你的这种用法,其实就是我的用法
直接做成一个巨大的Util,也就这样了
这样用我不反对啊,我也是这样用的

【在 t*********r 的大作中提到】
: fp处理一些实际的问题的确不方便,所以大部分FP语言最终没做到彻底纯粹。但fp的精
: 髓在于只有运算算法而不跟世界状态打交道的时候(比如编译,算model),编辑器可以
: 通过能够利用语言只有值而没有变量这个设定实现很多在imperative语言里面不能实现
: 或很难实现的功能,比如https://en.wikipedia.org/wiki/Pattern_matching,
: automated
: proof checking https://en.wikipedia.org/wiki/Coq。你要把这种语言扩展到带OO
: 也可以,只是object没有setter对于一般人来说很难用。
: 但如我所说,FP的对立是imperative,我说的这几点不适用与imperative language

avatar
z*e
50
declarative的目的是
dont make me fucking guess
让你的代码写清楚你要干什么
最好不要让我去看代码,因为我不想看
fp的很多东西做不到这一点
actor和oop可以做到
你见过有人说vert.x难的么?
但是vert.x又能实实在在解决问题哦
这就是为什么我认为vert.x有前途的主因
完全不看,是不可能的
但是如何尽力让别人看懂,这恰恰是oop所擅长的
hello world的确更难,但是java在一大堆代码的时候
其可读性是无与伦比的,项目失败
绝大多数不是因为功能点无法实现
而是因为代码不可维护,其中就包括fp这些老古董
如果这些古董成功的话,就没有java了,因为不需要嘛
就是因为fp的很多语言,外加c,c++做失败了
所以才会有了java的推广和流行
当然java太具体了,oop比较抽象
真正做到declarative的就是java
你的java代码给我,三分钟之内我可以说出这个java代码大概在干嘛
如果用上各种框架的话,比如spring的话,就更快了
我直接看annotation就大概能明白了
avatar
z*e
51

@Mock
实在是testing利器

【在 g*****g 的大作中提到】
: 通配符这种东西用来写点测试身心愉快。我老现在用 Groovy写点 unit test, mock的
: 时候用这通配符要比 Java里调用 any()舒服多了。
: 但产品环境里这些灵活性就是找死了。

相关阅读
logo
联系我们隐私协议©2024 redian.news
Redian新闻
Redian.news刊载任何文章,不代表同意其说法或描述,仅为提供更多信息,也不构成任何建议。文章信息的合法性及真实性由其作者负责,与Redian.news及其运营公司无关。欢迎投稿,如发现稿件侵权,或作者不愿在本网发表文章,请版权拥有者通知本网处理。