ex13.py 参数,解包和变量

本文介绍Python中如何使用argv变量来接收命令行参数,并通过实例演示如何解析这些参数。解释了argv的基本概念及其在脚本中的应用。
# coding: utf-8
from sys import argv
# 运行这个程序你需要三个参数,随便乱编一个吧,比如python ex13.py a b c
# 在第一行又一个import语句,这是你将python特性(也称作模块)引入脚本的一种方法。简单的说,这个程序不再是一个可以单独的执行的程序了,而是一个f(x),你必须输入一些参数才能运行它
# argv即“参数变量”(argument variable),这个变量保存着你要运行这个程序(脚本)时传递给Python的参数

script, first, second, third = argv # 本行将argv解包(unpack),与其将所有参数放到同一个变量上去,不如将每个参数赋值给一个变量,注意这里script是指文件名,不需要输入
x = raw_input("somthing new: ") # 没别的,只是为了随便用一下raw_input函数

print "The script is called:", script, x
print "Your first variable is:", first
print "Your second variable is:", second
print "Your third variable is:", third
print argv # 此时argv则变成了一个框的形式

### 如何解包 `boot.img` 文件 #### 工具准备 为了完成 `boot.img` 的解包操作,可以使用专门的 Python 脚本工具。这些工具通常位于项目的 `scripts` 目录下[^3]。对于 Windows 用户而言,也可以借助特定开发团队提供的图形化或命令行工具来简化流程[^4]。 #### 使用 Python 脚本解包 通过 Python 脚本实现 `boot.img` 的解包是一种常见方式。以下是具体的操作方法: 1. **安装依赖环境** 需要确保本地已安装 Python 3.x 版本,并具备运行 `.py` 脚本的能力。 2. **执行解包命令** 命令如下所示: ```bash python3 unpack_bootimg.py --boot_img boot.img --out output_dir ``` 上述命令中的参数解释为: - `--boot_img`: 指定待解包的目标文件名(这里是 `boot.img`)。 - `--out`: 设置输出目录的位置(即提取后的数据存储位置)。如果未指定,默认会在当前工作目录创建子文件夹保存结果[^2]。 #### 图形界面或其他平台适用工具推荐 除了手动编写脚本来处理外,还有现成的应用程序可供选择。例如某开源项目针对不同硬件架构定制了解决方案,尤其适合基于 MediaTek Qualcomm 平台构建的 Android 设备用户群体。访问其官方链接可获取最新版本下载地址及相关文档说明。 ```python import os def check_output_directory(output_path): """验证并创建目标输出路径""" if not os.path.exists(output_path): try: os.makedirs(output_path) print(f"成功创建新目录 {output_path}") except Exception as e: raise RuntimeError(f"无法建立必要目录结构:{e}") if __name__ == "__main__": img_file = "boot.img" out_folder = "./output" # 初始化前先确认输出空间可用性 check_output_directory(out_folder) command_line = f"python3 unpack_bootimg.py --boot_img {img_file} --out {out_folder}" result = os.system(command_line) if result != 0: print("解压失败,请检查输入参数或者重新配置环境变量") ``` 上述代码片段展示了如何利用标准库函数调用外部 shell 指令完成自动化任务的同时还加入了异常捕获机制提升健壮性。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值