赣州南康网站建设教做衣服的网站

张小明 2026/1/5 22:25:29
赣州南康网站建设,教做衣服的网站,wordpress 响应式 框架,上海专业建网站公司Python编程基础#xff1a;从基础语句到代码复用 1. 环境准备与基础操作 Python的学习可以借助IPython交互式shell和常规的Bash shell。首先#xff0c;需要为你的平台下载并安装正确版本的IPython#xff0c;下载地址为#xff1a; http://ipython.scipy.org/moin/Down…Python编程基础从基础语句到代码复用1. 环境准备与基础操作Python的学习可以借助IPython交互式shell和常规的Bash shell。首先需要为你的平台下载并安装正确版本的IPython下载地址为 http://ipython.scipy.org/moin/Download 。若安装失败也可以使用常规的Python shell。另外还可以下载包含所有所需软件的虚拟机其中已预配置好可直接运行的IPython。安装完成后在终端输入ipython会出现如下提示[ngiftMacintosh-7][H:10679][J:0]# ipython Python 2.5.1 (r251:54863, Jan 17 2008, 19:35:17) Type copyright, credits or license for more information. IPython 0.8.2 -- An enhanced Interactive Python. ? - Introduction and overview of IPythons features. %quickref - Quick reference. help - Pythons own help system. object? - Details about object. ?object also works, ?? prints more. In [1]:IPython shell与常规的Bash shell很相似能执行如ls、cd和pwd等命令。下面通过简单示例对比Python和Bash的操作- 在Python终端输入In [1]: print I can program in Python I can program in Python在Bash终端输入[ngiftMacintosh-7][H:10688][J:0]# echo I can program in Bash I can program in Bash通过这两个示例可以发现Python和Bash在基础输出操作上差异不大。2. Python语句执行在终端输入命令是常见操作下面对比Bash和Python执行命令的方式。-Bash示例在Bash终端输入ls -l /tmp/会列出/tmp/目录下的文件信息。[ngiftMacintosh-7][H:10701][J:0]# ls -l /tmp/ total 0 -rw-r--r-- 1 ngift wheel 0 Apr 7 00:26 file.txtPython示例在Python终端需要先导入subprocess模块再使用subprocess.call方法执行命令。In [2]: import subprocess In [3]: subprocess.call([ls,-l ,/tmp/]) total 0 -rw-r--r-- 1 ngift wheel 0 Apr 7 00:26 file.txt Out[3]: 0对于初次接触Python代码的人来说import subprocess可能比较陌生。Python的强大之处在于能够导入包含代码的模块或文件并在新程序中复用。在这个示例中只需导入subprocess并按所示语法使用即可。可以使用以下通用语法在Python中运行任何shell命令subprocess.call([some_command, some_argument, another_argument_or_path])下面是一个Python版本的ls命令封装示例将代码保存为pyls.py文件并使用chmod x pyls.py使其可执行。#!/usr/bin/env python #Python wrapper for the ls command import subprocess subprocess.call([ls,-l])运行该脚本会得到与在命令行运行ls -l相同的输出。这展示了Python在系统编程中的常见用途即“封装”其他脚本或Unix命令。下面是一个系统信息收集脚本的Python和Bash版本对比-Python版本pysysinfo.py#!/usr/bin/env python #A System Information Gathering Script import subprocess #Command 1 uname “uname” uname_arg “-a” print Gathering system information with %s command:\n % uname subprocess.call([uname, uname_arg]) #Command 2 diskspace df diskspace_arg -h print Gathering diskspace information %s command:\n % diskspace subprocess.call([diskspace, diskspace_arg])Bash版本bashsysinfo.sh#!/usr/bin/env bash #A System Information Gathering Script #Command 1 UNAMEuname -a printf “Gathering system information with the $UNAME command: \n\n $UNAME #Command 2 DISKSPACEdf -h printf Gathering diskspace information with the $DISKSPACE command: \n\n $DISKSPACE这两个脚本的功能相似运行后输出相同。使用subprocess.call时将命令和参数分开是可选的也可以使用subprocess.call(df -h, shellTrue)这种语法。在IPython中可以使用Tab键查看模块的可用属性。例如导入subprocess模块后输入subprocess.并按Tab键会显示如下属性In [12]: subprocess. subprocess.CalledProcessError subprocess.__hash__ subprocess.call subprocess.MAXFD subprocess.__init__ subprocess.check_call subprocess.PIPE subprocess.__name__ subprocess.errno subprocess.Popen subprocess.__new__ subprocess.fcntl subprocess.STDOUT subprocess.__reduce__ subprocess.list2cmdline subprocess.__all__ subprocess.__reduce_ex__ subprocess.mswindows subprocess.__builtins__ subprocess.__repr__ subprocess.os subprocess.__class__ subprocess.__setattr__ subprocess.pickle subprocess.__delattr__ subprocess.__str__ subprocess.select subprocess.__dict__ subprocess._active subprocess.sys subprocess.__doc__ subprocess._cleanup subprocess.traceback subprocess.__file__ subprocess._demo_posix subprocess.types subprocess.__getattribute__ subprocess._demo_windows若想查看subprocess.call的详细使用信息可在IPython中输入subprocess.call?会显示其文档说明。3. Python函数的使用在之前的示例中我们按顺序执行语句实现了一些自动化操作。接下来为了进一步优化代码执行的自动化程度需要创建函数。函数可以看作是小型脚本它允许将一组语句封装在一起在需要时调用。在Python中函数的定义和使用需要注意缩进问题。Python要求嵌套代码保持统一的缩进级别通常一个制表符缩进为四个空格。以下是Python和Bash中函数使用的示例-Python示例在IPython交互式提示符下输入以下代码In [1]: def pyfunc(): ...: print Hello function ...: ...: In [2]: pyfunc Out[2]: function pyfunc at 0x2d5070 In [3]: pyfunc() Hello function In [4]: for i in range(5): ...: pyfunc() ...: ...: Hello function Hello function Hello function Hello function Hello function在这个示例中将print语句放在函数中不仅可以在后续调用该函数还能根据需要多次调用。-Bash示例在Bash shell中输入以下代码bash-3.2$ function shfunc() { printf Hello function\n } bash-3.2$ for (( i0 ; i 5 ; i)) do shfunc done Hello function Hello function Hello function Hello function Hello function对比Python和Bash的示例可以发现Bash实现相同功能需要更多的“额外代码”。例如Bash的for循环语法与Python不同。下面是一些简单函数的示例In [1]: def print_many(): ...: print Hello function ...: print Hi again function ...: print Sick of me yet ...: ...: In [2]: print_many() Hello function Hi again function Sick of me yet In [3]: def addition(): ...: sum 11 ...: print 1 1 %s % sum ...: ...: In [4]: addition() 1 1 2现在将之前的系统信息收集脚本转换为使用函数的形式#!/usr/bin/env python #A System Information Gathering Script import subprocess #Command 1 def uname_func(): uname uname uname_arg -a print Gathering system information with %s command:\n % uname subprocess.call([uname, uname_arg]) #Command 2 def disk_func(): diskspace df diskspace_arg -h print Gathering diskspace information %s command:\n % diskspace subprocess.call([diskspace, diskspace_arg]) #Main function that call other functions def main(): uname_func() disk_func() main()对应的Bash版本如下#!/usr/bin/env bash #A System Information Gathering Script #Command 1 function uname_func () { UNAMEuname -a printf Gathering system information with the $UNAME command: \n\n $UNAME } #Command 2 function disk_func () { DISKSPACEdf -h printf Gathering diskspace information with the $DISKSPACE command: \n\n $DISKSPACE } function main () { uname_func disk_func } main这两个脚本都创建了多个函数并使用main函数调用这些函数。如果是初次接触函数建议在Bash和Python脚本中注释掉main函数再次运行脚本会发现没有输出因为程序虽然执行了但没有调用内部的函数。此时你已经具备在Bash和Python中编写简单函数的能力可以尝试修改这些脚本中的系统调用添加新的函数并从main函数中调用它们。下面是一个简单的流程图展示了Python脚本中函数调用的流程graph TD; A[开始] -- B[导入subprocess模块]; B -- C[定义uname_func函数]; B -- D[定义disk_func函数]; B -- E[定义main函数]; E -- F[调用uname_func函数]; E -- G[调用disk_func函数]; F -- H[执行uname命令]; G -- I[执行df命令]; H -- J[输出系统信息]; I -- K[输出磁盘空间信息]; J -- L[结束]; K -- L;通过以上内容我们学习了Python的基础操作、语句执行、函数使用等知识为后续的学习和实践打下了坚实的基础。在接下来的内容中我们将探讨如何使用import语句实现代码复用。Python编程基础从基础语句到代码复用4. 使用import语句复用代码在前面的示例中我们学习了如何创建函数来替代在脚本中逐个执行shell命令。同时了解到模块实际上就是一个脚本或文件中的一些代码行只要以特定方式组织就可以在未来的程序中复用。下面通过导入之前创建的系统信息脚本来展示函数对于代码复用的重要性。首先打开IPython和Bash窗口。之前创建的Python脚本pysysinfo.py由于在Python中文件就是模块所以可以将该脚本文件导入到IPython中。需要注意的是导入时不需要指定文件的.py扩展名否则导入将失败。以下是在Noah的Macbook Pro笔记本上导入pysysinfo.py的示例In [1]: import pysysinfo Gathering system information with uname command: Darwin Macintosh-8.local 9.2.2 Darwin Kernel Version 9.2.2: / Tue Mar 4 21:17:34 PST 2008; root:xnu-1228.4.31~1/RELEASE_I386 i386 Gathering diskspace information df command: Filesystem Size Used Avail Capacity Mounted on /dev/disk0s2 93Gi 88Gi 4.2Gi 96% / devfs 110Ki 110Ki 0Bi 100% /dev fdesc 1.0Ki 1.0Ki 0Bi 100% /dev map -hosts 0Bi 0Bi 0Bi 100% /net map auto_home 0Bi 0Bi 0Bi 100% /home /dev/disk1s2 298Gi 105Gi 193Gi 36% /Volumes/Backup /dev/disk2s3 466Gi 240Gi 225Gi 52% /Volumes/EditingDrive虽然导入包含Python代码的文件看起来运行良好但实际上存在一些问题。例如如果只想打印脚本中磁盘空间部分的输出是无法实现的。这就是使用函数的原因函数可以控制程序各部分的运行时间和方式避免所有代码一次性运行。下面看导入使用函数封装的脚本pysysinfo_func.py的示例In [3]: import pysysinfo_func Gathering system information with uname command: Darwin Macintosh-8.local 9.2.2 Darwin Kernel Version 9.2.2: Tue Mar 4 21:17:34 PST 2008; root:xnu-1228.4.31~1/RELEASE_I386 i386 Gathering diskspace information df command: Filesystem Size Used Avail Capacity Mounted on /dev/disk0s2 93Gi 88Gi 4.1Gi 96% / devfs 110Ki 110Ki 0Bi 100% /dev fdesc 1.0Ki 1.0Ki 0Bi 100% /dev map -hosts 0Bi 0Bi 0Bi 100% /net map auto_home 0Bi 0Bi 0Bi 100% /home /dev/disk1s2 298Gi 105Gi 193Gi 36% /Volumes/Backup /dev/disk2s3 466Gi 240Gi 225Gi 52% /Volumes/EditingDrive可以发现输出与未使用函数的脚本相同。查看脚本pysysinfo_func.py的源代码#Main function that call other functions def main(): uname_func() disk_func() main()问题在于main函数在命令行运行脚本时用于获取输出但导入脚本时却不希望所有输出一次性出现。在Python中将模块既作为从命令行执行的脚本又作为可复用的模块使用是很常见的需求。解决方案是修改main函数的调用方式将脚本的最后部分修改为#Main function that call other functions def main(): uname_func() disk_func() if __name__ __main__: main()这是一种常见的编程“惯用法”缩进在if __name__ __main__:语句下的代码只有在从命令行执行脚本时才会运行。可以将此修改应用到自己的脚本中或者导入修复后的脚本pysysinfo_func_2.py进行验证。现在回到IPython解释器导入新脚本In [1]: import pysysinfo_func_2这次main函数没有被调用。为了实现代码复用我们可以使用之前提到的IPython技巧使用Tab键查看模块的可用属性In [2]: pysysinfo_func_2. pysysinfo_func_2.__builtins__ pysysinfo_func_2.disk_func pysysinfo_func_2.__class__ pysysinfo_func_2.main pysysinfo_func_2.__delattr__ pysysinfo_func_2.py pysysinfo_func_2.__dict__ pysysinfo_func_2.pyc pysysinfo_func_2.__doc__ pysysinfo_func_2.subprocess pysysinfo_func_2.__file__ pysysinfo_func_2.uname_func pysysinfo_func_2.__getattribute__ pysysinfo_func_2.__hash__可以忽略带有双下划线的属性因为这些是特殊方法超出了本文的介绍范围。过滤后可以看到pysysinfo_func_2.disk_func调用该函数In [2]: pysysinfo_func_2.disk_func() Gathering diskspace information df command: Filesystem Size Used Avail Capacity Mounted on /dev/disk0s2 93Gi 89Gi 4.1Gi 96% / devfs 111Ki 111Ki 0Bi 100% /dev fdesc 1.0Ki 1.0Ki 0Bi 100% /dev map -hosts 0Bi 0Bi 0Bi 100% /net map auto_home 0Bi 0Bi 0Bi 100% /home /dev/disk1s2 298Gi 105Gi 193Gi 36% /Volumes/Backup /dev/disk2s3 466Gi 240Gi 225Gi 52% /Volumes/EditingDrive可以看到通过函数我们实现了代码复用能够导入之前编写的代码并交互式地运行所需的部分。同样也可以单独运行其他函数In [3]: pysysinfo_func_2.uname_func() Gathering system information with uname command: Darwin Macintosh-8.local 9.2.2 Darwin Kernel Version 9.2.2: Tue Mar 4 21:17:34 PST 2008; root:xnu-1228.4.31~1/RELEASE_I386 i386 In [4]: pysysinfo_func_2.main() Gathering system information with uname command: Darwin Macintosh-8.local 9.2.2 Darwin Kernel Version 9.2.2: Tue Mar 4 21:17:34 PST 2008; root:xnu-1228.4.31~1/RELEASE_I386 i386 Gathering diskspace information df command: Filesystem Size Used Avail Capacity Mounted on /dev/disk0s2 93Gi 89Gi 4.1Gi 96% / devfs 111Ki 111Ki 0Bi 100% /dev fdesc 1.0Ki 1.0Ki 0Bi 100% /dev map -hosts 0Bi 0Bi 0Bi 100% /net map auto_home 0Bi 0Bi 0Bi 100% /home /dev/disk1s2 298Gi 105Gi 193Gi 36% /Volumes/Backup /dev/disk2s3 466Gi 240Gi 225Gi 52% /Volumes/EditingDrive通常编写可复用模块的目的是为了在新脚本中多次使用部分代码。下面是一个使用import复用代码的示例脚本new_pysysinfo.py#Very short script that reuses pysysinfo_func_2 code from pysysinfo_func_2 import disk_func import subprocess def tmp_space(): tmp_usage du tmp_arg -h path /tmp print Space used in /tmp directory subprocess.call([tmp_usage, tmp_arg, path]) def main(): disk_func() tmp_space() if __name__ __main__: main()在这个示例中不仅复用了之前编写的代码还使用了特殊的Python语法只导入所需的函数。通过导入其他模块的函数可以创建出完全不同的程序。在main函数中将其他模块的函数disk_func()与本文件中创建的新函数tmp_space()混合使用。以下是一个表格总结了代码复用的关键步骤|步骤|操作|| ---- | ---- ||1|将功能封装成函数编写模块脚本||2|使用if __name__ __main__:语法控制脚本执行和模块导入时的行为||3|在新脚本中使用import或from ... import ...语句导入所需的函数或模块||4|在新脚本中调用导入的函数|下面是一个流程图展示了代码复用的流程graph LR; A[编写模块脚本] -- B[封装函数]; B -- C[使用 if __name__ __main__ 控制执行]; C -- D[保存为模块文件]; E[编写新脚本] -- F[导入模块或函数]; F -- G[调用导入的函数]; D -- F;通过以上内容我们深入学习了Python代码复用的方法和重要性。掌握这些知识后你可以编写更复杂的Python模块并在不同的项目中反复使用提高编程效率。希望这些内容能帮助你在Python编程的道路上更进一步。
版权声明:本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!

视频网站如何推广网站建设属于什么税种

知网AIGC率过高是当前很多学生和研究者在论文写作中遇到的普遍问题。别慌,只要掌握正确的方法,完全可以将AI生成痕迹有效降低,顺利通过检测。 一、知网AIGC检测原理是什么? 知网等平台通过以下方式判断内容是否由AI生成&#xf…

张小明 2026/1/1 15:48:06 网站建设

网站添加地图导航本地网站建设信息大全

在 SAP 里,创建发票时(VF01/VF04)出现的 Billing Type 列表(如截图里那一长串)并不是“主数据”,而是系统根据当前公司代码、销售范围、以及该 Billing Type 是否被标记为“与发票相关” 动态拼出来的。 因…

张小明 2025/12/31 4:03:42 网站建设

如何创办一个赚钱的网站假网站怎么制作

嘉楠耘智与SynVista合作打造可再生能源矿机 比特币矿机及硬件制造商嘉楠耘智已达成一项合作协议,将共同开发一个可再生能源自适应的比特币挖矿平台。此举扩大了该公司对绿色能源的关注,因为整个行业正在寻求可持续的方式来满足其电力需求。 嘉楠耘智周一…

张小明 2025/12/31 4:03:42 网站建设

用dw做的网页怎么上传到网站wordpress浮动按钮插件

Excalidraw在金融建模中的可视化应用尝试 在一次信贷产品需求评审会上,产品经理刚讲完“我们需要一个支持多级审批、动态评分卡和实时拦截的风控系统”,技术负责人便在共享屏幕上拖出一张白板——几秒后,三个主模块已由AI自动生成&#xff0c…

张小明 2026/1/3 21:04:01 网站建设

wordpress 5.0多站点合肥市建设局网站

Wan2.2-T2V-A14B在地质勘探成果展示中的三维剖面动画能力在地质科研与工程实践中,如何将深埋地下的复杂构造“讲清楚”,始终是一大挑战。传统的二维图件和静态剖面虽能传递基础信息,但难以直观呈现地层演化、断层活动等动态过程。而专业三维动…

张小明 2025/12/31 4:03:45 网站建设

dede+营销型网站百度推广客户端手机版下载

Steam游戏时长自动化增长:3分钟掌握高效挂机技巧 【免费下载链接】HourBoostr Two programs for idling Steam game hours and trading cards 项目地址: https://gitcode.com/gh_mirrors/ho/HourBoostr 还在为收集Steam交易卡而长时间开着游戏吗?…

张小明 2026/1/4 2:17:52 网站建设