https://stackoverflow.com/questions/47200625/how-to-make-ttk-scale-behave-more-like-tk-scale
https://github.com/TkinterEP/ttkwidgets/blob/master/ttkwidgets/tickscale.py#L643
就是这个家伙。 我的天哪,还有什么代码能比这个更长的吗...
https://github.com/TkinterEP/ttkwidgets/blob/master/ttkwidgets/tickscale.py#L643
就是这个家伙。 我的天哪,还有什么代码能比这个更长的吗...
Stack Overflow
How to make ttk.Scale behave more like tk.Scale?
Several Tk widgets also exist in Ttk versions. Usually they have the same general behaviour, but use "styles" and "themes" rather than per-instance appearance attributes (such as bg, etc...). This is
虽然我写得很累,但我觉得应该改正下自己的坏脾气。 别人的代码即便不好,也是可以帮忙更改的。 虽然混乱的代码给我造成了麻烦,但他们设计逻辑也是很累的,代码质量不好不能全怪他们,也怪环境不好。
如果别人的库有可以改进的部分,你会费 15 分钟来提交 Pull Request 吗
Anonymous Poll
60%
会。开源就该支持
40%
会,但只改影响功能的部分
0%
不会。不好维护的代码应该由他们的创建者负责到底
https://realpython.com/python-type-checking/#gradual-typing-and-consistent-types 草,不愧是 Python 这文章...
Realpython
Python Type Checking (Guide) – Real Python
In this guide, you'll look at Python type checking. Traditionally, types have been handled by the Python interpreter in a flexible but implicit way. Recent versions of Python allow you to specify explicit type hints that can be used by different tools to…
https://github.com/microsoft/pyright/blob/da39a2a78a442d2a6b29d664b32475c361c853f1/packages/pyright-internal/src/tests/samples/dataclass8.py
欸,有更新 data class 支持,而且还内部支持 typing 实现 gradual typing 不像 Ruby 太 duck typing 了,看来 Py 还是有点东西
https://github.com/microsoft/pyright/blob/930c2021c63531248c6a979e3d3afdbcca14f16b/packages/pyright-internal/src/analyzer/types.ts#L530
欸,原来不报类型错误必须要在超类链上啊... 真是过分呢,我只是想面向对象 Mixin 啊
@dataclass
class BaseClass:
my_ref: "ReferredClass" 欸,有更新 data class 支持,而且还内部支持 typing 实现 gradual typing 不像 Ruby 太 duck typing 了,看来 Py 还是有点东西
https://github.com/microsoft/pyright/blob/930c2021c63531248c6a979e3d3afdbcca14f16b/packages/pyright-internal/src/analyzer/types.ts#L530
export function hasUnknownBaseClass(classType: ClassType) 欸,原来不报类型错误必须要在超类链上啊... 真是过分呢,我只是想面向对象 Mixin 啊
GitHub
microsoft/pyright
Static type checker for Python. Contribute to microsoft/pyright development by creating an account on GitHub.
啊…… 看来数学不好果然难呢。 重构的时候我把
xs[a:-1] 的 exclusive end -1 省略了(那就包括末项了)、 map(it*b, round(n/b)) 给理解成 range(a, n, b) 了,我加的 while a%b != 0 查找其实就是 (a/b) *b ... 虽然都是很简单的倍数关系啊
duangsuse::Echo
不过,在我经历无数烂代码的洗礼后,终于找到了bug的源头(一个str属性配置没适配...) 现在终于可以移植过来了emmmm...
有意思的是这位大神作者(可惜代码质量怎么那么差) 写出的代码虽然很好用,但其实它是薛定谔程序! 测试里应用范围内无变量,但程序行为却间隔1次时好时坏!
这个故事告诉我们,不要尝试复制粘贴自己的代码然后做出改动。多抽提出函数调用。不然出了问题会非常麻烦。(这位大佬是把 横向纵向 的所有区别代码都用
self.op = 的形式支持,这又走另一个极端了... )不过说起来这次重构限制也蛮大的。目的只是要支持的几个控件里的一小个,因为原代码质量和工具不好 费了一天时间才移植一个 Widget, 而且还阻塞了我其他任务
也是因为重构时要求在完整正确的代码上改。不然一边改一边加特性还要修问题,在自己不熟悉UI框架的情况下很难正确。
要是这个作者能把他
也是因为重构时要求在完整正确的代码上改。不然一边改一边加特性还要修问题,在自己不熟悉UI框架的情况下很难正确。
要是这个作者能把他
a = initial; a = op(a, b) | a = initial; if p(a): a = b 的这种坏习惯改一改,学会多建立私有方法/局部函数 就好了,我看充满重赋值的代码时是相当头疼的……不过这也不能,如果只是修改代码风格、压行的话,是起不到简化作用的,不同的调用参数太多了。 我吐嘈的是这个人没做到一些最基础的复用,看起来就像是
如果要进一步提升代码质量,不使用高阶函数是很难实现的(那意味着你没法把模板化函数命名作动词,然后用另一些动词调用它从而实现更高层次的复用)
python wtf.py 的面向查错编程一样(当然对 Tk 的 GUI 有些问题也迷所以必须测试,但不意味着你可以把冗余逻辑复制粘贴而不是化作复用函数)如果要进一步提升代码质量,不使用高阶函数是很难实现的(那意味着你没法把模板化函数命名作动词,然后用另一些动词调用它从而实现更高层次的复用)