首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

这个脚本可以像我想的那样工作,但是它很难看

回答:

这个问题涉及到脚本的功能和外观两个方面。从功能角度来看,如果脚本能够按照预期工作,那么它就是有效的。然而,从外观角度来看,脚本的可读性和可维护性也是非常重要的。

对于脚本的外观问题,可以通过以下几个方面来改善:

  1. 代码风格:遵循一致的代码风格,如缩进、命名规范等,可以使代码更易读。可以使用工具如Prettier或ESLint来自动格式化代码。
  2. 注释:在代码中添加注释,解释代码的功能和意图,可以帮助其他开发人员更好地理解代码。
  3. 模块化和函数化:将代码分解为小的模块或函数,可以提高代码的可读性和可维护性。每个模块或函数应该只负责一个特定的功能。
  4. 命名规范:使用有意义的变量和函数命名,可以使代码更易于理解。避免使用缩写或不明确的命名。
  5. 代码重构:如果脚本的结构混乱或冗长,可以考虑进行代码重构。通过重构,可以提高代码的可读性和可维护性。

总结起来,虽然脚本的外观可能不够美观,但只要它能够按照预期工作,就可以被认为是有效的。然而,为了提高代码的可读性和可维护性,可以采取一些措施来改善脚本的外观。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

为什么Python没有main函数?

其实,可能他们是模仿真正main函数,但是许多人都被误导(或误解),然后编写了非常笨拙代码。 在本文中,我们来讨论一下为什么Python没有main函数。...但是,当我们把目光转向Python时,就会发现情况大不相同。 Python是一种解释语言,即脚本语言。运行过程是从上到下,逐行进行,这意味着起点是已知。...总而言之,Python作为脚本语言不同于编译语言。无论是单个模块(即.py文件),还是由多个模块组成软件包,Python都可以选择一种灵活执行方法,这完全不像其他语言那样必须定义入口。...他们之所以要编写__name__ =='__main__',可能是因为表明main()只在直接执行当前脚本时才运行,而在将其导入到其他模块时不要运行。 但是,我个人不推荐这种写法。...其次,如果有多个文件,强烈建议不要将这个语句写在入口文件(main.py)中。从理论上讲,内容不应该导出供其他模块使用,因为它是起点。

1.8K20

Gardle 是什么

设计足够灵活,可以构建几乎任何软件。...约定 Gradle 借鉴 Mavean 做法,通过实现约定,使常见类型项目(比如Java项目)易于构建。使用适当插件可以容易为许多项目生成构建脚本。...也可以分享给其他人,这样在交流问题时候就很有用了。更详细构建扫描可以查看这个文档 https://scans.gradle.com/?...虽然有这样限制,但是在用时候也不麻烦,对常见类型项目都是容易构建-例如 Java编译库,通过添加一层约定和插件预构建功能,可以将自己约定和功能封装成一个插件,当然也可以发布这个插件。...有一个常见误解是Gradle强大和灵活是因为脚本是代码,其实并不是。提供这种能力是底层模型和API。就像我们在实践中建议那样,你不应该放太多命令式逻辑在脚本里。

62220
  • 八种最常见Docker开发模式 别说你还不知道

    我仍试图保持精简,但问题是,我屏幕会话可以驻留在这个容器中,结合我那台笔记本电脑上设置“autossh”,几乎总是有一条连接与容器相连,那样我就可以编辑与我其他开发容器“实时”共享代码。   ...我还可以使用标准虚拟机来达到目的,但是可以在短得多时间内启动上述docker容器。 5....与此同时,虽然你可以事先让捆绑工具做所有的工作,但我真的不想在主机环境中运行,主机环境可能与容器兼容,也可能不兼容。   这方面的解决办法就是创建构建容器。...但这种模式最可能立即吸引我们大多数人地方在于,避免了这一风险:本意良好开发人员偶尔在安装脚本方面犯下危险错误。   我确实很喜欢这种方法。...我仍在不断推出了一系列基础设施容器,其目的是让实际应用程序部署起来轻而易举,就像我将一个完整私有云系统向Docker迁移那样

    1.5K60

    信息收集——僵尸扫描

    抓包看看第一个函数是不是像我们预想中那样发包 ? 可以看到发送数据包正像我们预期中一样,先发一个SYN/ACK,再收到一个RST,重复三次,判断IPID,这时再来看看IPID如何呢! ?...已经可以确定xp就是一个好僵尸了,那么接下来便是利用第二个函数对来进行端口扫描。因为利用zombie时中途会伪装IP,所以我在Wireshark中没有发现连续包,所以这里就不截数据包图了。...第二个函数思路清晰,希望懂python朋友好好看看。...---- 0x04. nmap中僵尸扫描 在介绍nmap之前笔者有一个问题想要探讨一下,就是既然有了nmap这个无敌强大扫描工具存在,那么为什么我们还要自己写脚本呢?...这里仅仅是我个人理解,不喜勿喷,笔者认为其实工具仅仅是为了让我们更方便做一些想做事情,或许直接调用一个工具再添加一两个参数选项就能超越我们几十上百行脚本,也更能出色完成任务,但是理解工具工作原理是否更重要呢

    91001

    2021 年 Python 好与坏

    在这篇文章中,我聊下 Python 最大优势和不足,以不足为主,因为这些问题已经存在了许多年,而且其中有些导致了很多问题。这篇文章对 Python 评价看起来非常负面。...好吧,谢谢,好像我那样想过是的。 有那么一会儿,我真以为也许是我傻。毕竟,不会所有那些聪明人都错了,对吧?不对!...这就是为什么人们会说,而且是非常严肃地说,Python 容易安装。...这个问题会在以下 3 个情况下出现: 数据科学、视频 / 图像处理、游戏或其他有大量 C/C++ 代码库 试图将 Python 代码给非开发人员甚或是非 Python 开发人员 像我一样喜欢尝试许多新库...现在,Python 精英人士会居高临下地说:嘿,伙计,你应该使用 *#@% 等来简化自己工作。 但初学者一个都不知道(说真的,难道他们真要为了测个脚本去学习那些东西吗?)。

    46610

    编写快速安全Bash脚本建议

    使用${}引用变量 有时某些变量,内容为file.txt,并且我这样使用它: mv $MYVAR $MYVAR__bak # wrong! 这段代码是无法工作!...,可以这样写: for i in `seq 1 10`; do echo $i; done 我觉得这是不可能记住(你要怎么记住在 seq 1 10 之后有一个分号,但是在 do 之后却没有了),所以我不会去记...你也可以写while循环,但我从来没有这样写过。 有个很酷事情是你可以遍历另一个命令输出。seq 1 10 将数字从1到10(每行一个)打印,这个for循环只是提取该输出并遍历。...看看这个看似合理 shell 脚本: X="i am awesome" Y="i are awesome" if [ $X = $Y ]; then echo awesome fi 如果你尝试运行这个脚本...后台进程 我不会在此谈及太多关于 job 控制内容,但是:你可以像下面这样启动后台进程 long_running_command & 如果你后来后悔将进程放到后台,并希望把带调回前台,你可以用 fg

    1.8K80

    为Vue2集成UIkit

    小编说:Vue只是为我们提供了一个优秀前端组件式开发框架,但单纯依靠Vue是做不出一个漂亮网页应用,甚至连“不难看这个标准都达不到。这个时候借助界面框架UIkit能够很好地解决这一问题。...UIkit Bootstrap已经有很多年历史了,在业界应用也相当普遍,无论是前端开发或者后端开发,为了能快速做一个不算太难看界面,自然成为众多工程师选择,包括我。...插件 上述写法还是不够DRY,为了使用一个包就得引入多个不同依赖库,这种做法实在很难看,此时我们可以选择一个Vue最佳做法,就是用插件形式来包装这种零碎化引入方式。...现在代码是不是感觉干净多了?那么回过头来看Vue插件,在这里面我们不仅可以像上述代码那样单纯地对Vue实例进行扩展,还可以进行更多全局化处理。...$,这个变量其实是对jQuery一个内部引用,准确地说这是在引用jQuery脚本后由jQuery注册到浏览器window全局变量上jQuery实例。

    1.2K20

    如何免费系统化入门数据科学?

    因为那样辅导班,我没上过,着实不知道质量如何,不敢妄下判断。 跨专业系统学习数据科学知识,除了辅导班会让你挑花眼以外,书籍、资料和网上学习资源也不好挑选。因为数据科学知识技能特色是发展迅速。...而借助 Seaborn ,你可以用非常简单语句,生成复杂印刷级别图形。我在 2018 年这则笔记里,还专门保留了几张截图,作为例子。...这是当时课程里面的截图: 你不难看到,Plotly 可以方便做出这种三维图像。你还可以通过拖动从不同角度进行观察。 当时由于课程数量不多,并没有引起我重视。...初心 我给你如此详细介绍这套课程,是因为完全免费,而且还可以提供学习证书。这种分享精神,也需要你我分享,来薪火相传。...作为一个数据科学比赛网站,Kaggle 需要数据,需要算力,需要题目,但是更需要「人」,也就是足够多参与者。不是每一个来到这个网站用户,都具备数据科学基础知识。

    40650

    PHP是什么

    学习一样技能,你得先清楚这项技能是到底做什么,说到这里,我大家都会简单说是做网站,因为PHP在WEB领域应用最为广泛,大多数网站都是用PHP做。...PHP相对于其他语言,比较简单,相对好上手,比较适合零基础的人学习,但是像我上面说那样,PHP只完成了一个网站或者系统一部分。...> 请注意这个范例和其它用 C 或 Perl 语言写脚本之间区别——与用大量命令来编写程序以输出 HTML 不同是,PHP 页面就是 HTML,只不过在其中嵌入了一些代码来做一些事情...任何一个网站可以没有数据库,可以没有后端程序,但是必须得有前端页面,而这也是最早期网站形态—一 一个只能展示文字和图片等信息静态页面。 掌握静态网页制作技术是学习开发网站先决条件。...需要特别说明是PHP并不能直接在浏览器中运行,需要Apache环境支持,放在Apache服务器里面,然后用浏览器用访问,这个需要大家在学习过程中配置一下,非常简单。

    1.3K30

    测试 View Controllers

    让事情保持简单 测试简单事情很简单,同样,测试复杂事会复杂。就像我们在其他文章中指出那样,让事情保持简单小巧总是好。除此之外,它还有利于我们测试。这是件双赢事。...如果你好奇的话,可以去找 Wikipedia 上文章看看。同时,我们也认为重构和测试可以很好地结合在一起。 测试 UI 部分通常麻烦,因为它们包含太多活动部件。...在测试过程中,还没有 table view,但是我们传递一个 mock  table view,这样即使没有 table view,也可以测试 data source,就像下面你即将看到。...本文后面有 data source 测试例子,更加详细地展示了这些技术如何工作在一起。 SenTestKit 编者注 这一节有一些过时了。...你可以在测试之前或之后运行脚本,也可以有多个测试 bundle。这对大型项目来说很有用。最重要是,可以打开或关闭个别测试,这对调试测试非常有用,只是要记得之后再把它们重新全部打开。

    73020

    MySQL原生高可用方案之InnoDB ReplicaSet(一)

    我们通常使用MySQL Shell中AdminApi来管理innodb副本集,adminapi有js和python两种版本,我们可以方便去编写脚本来自动部署MySQL,AdminAPI为MySQL...innodb副本集支持MySQL Clone组件,我们可以利用克隆插件方便搭建起来一个副本集。...InnoDB ReplicaSet与MySQL Router紧密集成,可以使用AdminAPI与它们一起工作。...MySQL Router可以基于InnoDB ReplicaSet自动配置自己,这个过程称为bootstrapping,这样就不需要手动配置路由。...; 6、所有secondary都要从primary复制,因此可能会对源实例产生一定影响 从上面的描述中不难看出,innodb副本集跟MongoDB副本集还有很大差距,但是我们依然有研究必要,因为它是

    1.2K50

    Python 动态加载模块以及多进程问题

    然后,我遍历每个动态加载模块,并调用其中 do_work() 函数,该函数会生成一个新进程,以便代码在单独进程中异步运行。...目前,我在主脚本开头导入了所有已知模块列表——我觉得这是一个讨厌 hack,而且不灵活,而且维护起来也痛苦。以下是生成进程函数。我希望在遇到模块时修改它以动态加载该模块。...由生成后代执行工作非常密集,我不想等到一个后代完成后才能生成另一个后代。顺便说一句,我知道 Python 中线程实际上是一种时间共享/切片——这没关系。...[Edit]在阅读了有关 Python GIL 和 Python 中线程(啊哼——hack)更多内容之后,我认为最好使用单独进程(至少 IIUC,如果有多个进程,脚本可以利用它们),所以我将生成新进程而不是线程...我有一些生成进程示例代码,但它有点简单(使用 lambda 函数)。我想知道如何扩展,以便它能够处理加载模块中运行函数(就像我上面做那样)。

    7210

    编程是枯燥,除非……

    每一份新工作都是一次职业飞跃,而且在我们这个行业中,高频跳槽本来就很常见。但是我前任,前前任,前前前任,前前前…任雇主对于我辞职并不开心。...有些甚至试图挽留我,但是我已经厌倦了,我真心无法继续留下来了。 (免责声明:我幸运地生活在程序员供不应求地方,不过后来我发现换工作并不总是一个很好选择!)。...我现在是Enki联合创始人和CTO。我负责工程文化。我部分工作是要确保我们开发人员永远不会像我过去那样觉得工作无聊枯燥。...但是一年以后,我们依然工作于完全相同数据集,用着完全相同技术。我只是成为了某个特定方面的“专才”,也没有什么可以学习新内容。...虽然我怀疑Facebook依然没有完全“解决”遗留问题,但听上去工作变得更有趣了。 复制/粘贴无聊 还有就是编码,编码,还是编码。 在我以前一些工作中,我写了很多收效甚微代码。

    76480

    编程是枯燥,除非……

    作为一个开发者,我干同一份工作时间不会超过两年。 每一份新工作都是一次职业飞跃,而且在我们这个行业中,高频跳槽本来就很常见。但是我前任,前前任,前前前任,前前前…任雇主对于我辞职并不开心。...有些甚至试图挽留我,但是我已经厌倦了,我真心无法继续留下来了。 (免责声明:我幸运地生活在程序员供不应求地方,不过后来我发现换工作并不总是一个很好选择!)。...我现在是Enki联合创始人和CTO。我负责工程文化。我部分工作是要确保我们开发人员永远不会像我过去那样觉得工作无聊枯燥。...在我团队共同努力下,我们制定了防止程序员感到无聊枯燥策略,并应用到公司里。由于这一策略到目前为止一直运作良好,所以在这里我和大家一起分享。 在Enki公司,我们可以放肆地冲锋具有挑战性问题。...但是一年以后,我们依然工作于完全相同数据集,用着完全相同技术。我只是成为了某个特定方面的“专才”,也没有什么可以学习新内容。

    61760

    伙计们,Go 并没有那么简单

    这个博文末尾,我会写更多关于 Go 干货。 社区实际上并不那么令人愉快,特别是那些因为简单性而主张使用 Go 的人。...看起来 Go 似乎并不建议使用 this 和 self,但是仍然需要方法,所以就存在 “接收者参数”,除了方法签名看上去奇怪之外,它们基本上是一样。...但就像我,我不是在抱怨 Go,我真的不介意接受者参数观点(如果我忍受不了 C++ 怪异,我可以忍受 Go )。 3. 函数返回值 如果接收参数不够,函数甚至能够通过各种形式返回值来声明。...关于 Go,有件事令我惊讶 —— 这门所谓简单语言 —— 你甚至可以实现多重继承。确实很糟糕。 golang-nut 邮件列表中,有人提到,Go 并不能很好处理继承歧义。...我还不知道 Go 是否会在我日常工作中被选为一个(子)项目,或者我是否可能将它用于兴趣爱好项目。我避免像本文提到那种教条社区推广一份子。有没有意识形态导向地方呢?

    79660

    360道C语言+数据结构(题目+源码)

    岁月匆匆转眼即逝,计算机这行真的不像我当年报志愿时候那样上天入地无所不能,给自己大学打分的话勉强打个75分吧。...尽管如此,小林还是后悔,当初上大一时候没有好好学习C语言,以至于后期学数据结构、Java、Python很难。...不少人问我,学习C语言到底有没有用,这里小林想说是,不学C语言当然可以但是你要知道就算是火、很热门Python也是用C语言编写。...大家应该都知道蓝桥杯和ACM吧(程序设计大赛),虽然说用其他高级语言做题也可以但是用C语言来做题是最简单。 读者也可以上网搜一搜,全球编程语言排行榜前三,哪一次没有C语言。...不论工作还是学生时代,人和人之间相处都是将心比心,你对我好,我才对你好。 小林这里每天写文章,都要花上1个小时,甚至更多,所以练习题源码,小林就不免费发布了,毕竟小编也要生活。 源代码示例 ?

    9683129

    使用 Kustomize 帮你管理 kubernetes 应用(一):什么是 Kustomize ?

    真正让我注意到,并主动开始了解其功能和使用方法,是张磊大神在云栖社区发表一篇文章《从Kubernetes 1.14 发布,看技术社区演进方向》,他在文中是这么说: Kustomize 允许用户以一个应用描述文件...感谢 devops 文化,它是我不需要为每个应用去写 YAML 文件,各个应用开发组承担了这一工作,我只需要为他们提供基础模板即可。...虽然也使用了 helm ,但是其只提供应用描述文件模板,在不同环境拉起一整套服务会节省很多时间,而像我们这种在指定环境快速迭代服务,并不会减少很多时间。...针对这种情况,我已经计划要自己开发一套更符合我们工作这种场景应用管理服务,集成在我们自己 devops 平台中。...拿张磊大神这张图不难看出,在 kubernetes 原生应用管理系统中,应用描述文件在整个应用管理体系中占据核心位置,通过应用描述文件可以组合和编排多种 kubernetes API 资源,kubernetes

    1.1K11

    364道C语言训练(题目+源码)

    岁月匆匆转眼即逝,计算机这行真的不像我当年报志愿时候那样上天入地无所不能,给自己大学打分的话勉强打个75分吧。...尽管如此,小林还是后悔,当初上大一时候没有好好学习C语言,以至于后期学数据结构、Java、Python很难。...不少人问我,学习C语言到底有没有用,这里小林想说是,不学C语言当然可以但是你要知道就算是火、很热门Python也是用C语言编写。...大家应该都知道蓝桥杯和ACM吧(程序设计大赛),虽然说用其他高级语言做题也可以但是用C语言来做题是最简单。 读者也可以上网搜一搜,全球编程语言排行榜前三,哪一次没有C语言。...不论工作还是学生时代,人和人之间相处都是将心比心,你对我好,我才对你好。 小林这里每天写文章,都要花上1个小时,甚至更多,所以练习题源码,小林就不免费发布了,毕竟小编也要生活。 源代码示例 ?

    1.2K3029

    深度学习基础:为什么神经网络感知机中神经元需要偏置项?

    但是下面的内容是容易理解: 我们容易就注意到,当b=0时,函数总是通过原点[0,0]。当我们保持a不变情况下引入b时,新函数总是相互平行。那么,我们能从中得到什么信息呢?...怎样测试实际效果呢?让我们使用一个简单例子:OR函数。让我们先来看看分布: 绘制在笛卡尔坐标系中OR函数: 我想你已经明白了这个问题。...如前所述,在这种情况下感知器具有更大灵活性。此外我们可以注意到,正在寻找与上一个示例相同判别平面,但是现在它能够找到分离数据最佳位置。 所以,偏置项重要性现在已经清楚了。...sigmoid函数虽然改变了输出形状,但是我们仍然遇到同样问题:如果没有偏置项,所有的函数都会经过原点。当我们试图用曲线分离OR函数中时,仍然得不到满意结果。...如果您想尝试一下,看看它是如何工作,您只需要对python代码做一些小小修改。 我真诚地感谢你对这个主题感兴趣。如果你有任何建议、意见,或者只是和我打个招呼,请给我留言!

    2.5K20

    程序员遇到 Bug 时 30 个反应,你是哪一种?

    这难道不像我们自己编程故事吗?你正兴致勃勃地在构建着什么,但是突然之间,函数输出了一个致命错误。所以,现在你必须回过头去删除一些代码块,以找出错误发生行号。...我 常常会一开始就根据自己编程思想,一头扎进去研究,但是这可能会导致麻烦,如果事情不像原先设想地那样顺利的话。已经有很多次在我启动一个项目之后,陷 入了困境,然后只好寻求博客和其他论文支持。...但是这一切都取决于你需要,如果你觉得在程序中间休息更令人懊恼的话,那就不要中断。 13.我应该把这个项目束之高阁,以后再来处理。 休息另一个选择是离开你项目,而不仅仅是远离你电脑。...错误信息非常有帮助,但是除非你记得不同代码意味着什么,否则读起来更像是翻译过计算机语 言。值得庆幸是,有很多在线支持可以帮助我们确定这些错误信息真正含义。...有时候,在你绞尽脑汁花费数个小时之后,可能要做只是将你工作文件移动到归档目录(或删除它们),再从头开始就可以了。但是,考虑到先前已经耗费时间,你很难下定这个决心。

    1.1K90
    领券