warning D9035 : option 'Wp64' has been deprecated and will be removed in a future

本文介绍在Visual Studio 2008中遇到的关于 wp64 编译选项的警告,并提供了相应的解决方法。由于VS2008不再建议使用此选项来检测64位兼容性问题,可以通过调整项目的属性设置来消除警告。
开始用visual studio.NET 2008,但将vs2005的程序转到2008上,出现了如下warning: 
Warning 1 Command line warning D9035 : option 'Wp64' has been deprecated and will be removed in a future release cl 
原因: 
vs2008不再建议使用/wp64检测64兼容问题,因为可以直接在32位OS上交叉编译为64位代码(vs2005也可以)。vs2008建议直接使用该方法检测64位兼容性问题。该选项被设置为“不推荐”有个原因是它会导致某些template库发生许多无效的warning。 

解决办法: 
右键项目名称,选择Properties,c/c++ Detect 64 bit Portability Issues设为No。 

本文引用地址:http://www.sciencenet.cn/blog/user_content.aspx?id=46310 

YOLO系列是基于深度学习的端到端实时目标检测方法。 PyTorch版的YOLOv5轻量而高性能,更加灵活和易用,当前非常流行。 本课程将手把手地教大家使用labelImg标注和使用YOLOv5训练自己的数据集。课程实战分为两个项目:单目标检测(足球目标检测)和多目标检测(足球和梅西同时检测)。  本课程的YOLOv5使用ultralytics/yolov5,在Windows和Ubuntu系统上分别做项目演示。包括:安装YOLOv5、标注自己的数据集、准备自己的数据集(自动划分训练集和验证集)、修改配置文件、使用wandb训练可视化工具、训练自己的数据集、测试训练出的网络模型和性能统计。 除本课程《YOLOv5实战训练自己的数据集(Windows和Ubuntu演示)》外,本人推出了有关YOLOv5目标检测的系列课程。请持续关注该系列的其它视频课程,包括:《YOLOv5(PyTorch)目标检测:原理与源码解析》课程链接:https://edu.youkuaiyun.com/course/detail/31428《YOLOv5目标检测实战:Flask Web部署》课程链接:https://edu.youkuaiyun.com/course/detail/31087《YOLOv5(PyTorch)目标检测实战:TensorRT加速部署》课程链接:https://edu.youkuaiyun.com/course/detail/32303《YOLOv5目标检测实战:Jetson Nano部署》课程链接:https://edu.youkuaiyun.com/course/detail/32451《YOLOv5+DeepSORT多目标跟踪与计数精讲》课程链接:https://edu.youkuaiyun.com/course/detail/32669《YOLOv5实战口罩佩戴检测》课程链接:https://edu.youkuaiyun.com/course/detail/32744《YOLOv5实战中国交通标志识别》课程链接:https://edu.youkuaiyun.com/course/detail/35209 《YOLOv5实战垃圾分类目标检测》课程链接:https://edu.youkuaiyun.com/course/detail/35284  
<think>好的,用户遇到了关于pandas的FutureWarning,具体是关于squeeze参数的弃用问题。我需要帮他理解这个问题,并提供解决方案。 首先,我需要回忆squeeze参数的作用。根据引用[2],当读取Excel文件时,如果usecols只选一列且squeeze=True,返回的是Series而不是DataFrame。但现在这个参数被弃用了,所以用户需要调整代码以适应未来的版本。 接下来,用户需要知道替代方法。根据警告信息,应该用pd.read_excel(...).squeeze()代替squeeze参数。例如,原来的代码可能类似pd.read_excel('data.xlsx', usecols=[1], squeeze=True),现在应改为pd.read_excel('data.xlsx', usecols=[1]).squeeze()。这样在pandas的未来版本中就不会有警告了。 另外,用户可能需要了解squeeze()方法的具体用法。比如,当DataFrame只有一列时,squeeze()会将其转换为Series,这对于后续处理可能更方便。同时,还要注意当squeeze()应用在多列DataFrame上时,不会改变结构,所以需要确保使用条件正确。 还需要提醒用户检查现有代码中所有使用squeeze参数的地方,替换成方法调用。例如,在read_csv或read_excel中移除squeeze=True,并在读取后链式调用.squeeze()。这样既保持功能,又避免警告。 最后,确保用户明白这个变更的原因和影响。比如,pandas为了保持API的一致性,将参数迁移到方法,这可能使代码更清晰。用户需要测试替换后的代码,确保在旧版和新版pandas中都能正常运行,或者逐步迁移到新方法。</think>### 解决方案:处理`FutureWarning: squeeze argument deprecated`警告 当使用`pandas`的`read_csv`或`read_excel`等函数时,如果指定`squeeze=True`参数,会在未来版本的`pandas`中触发警告。这是因为`squeeze`参数已被标记为弃用,需改用更规范的替代方法。 #### 步骤说明 1. **理解`squeeze`参数的作用** `squeeze=True`用于在读取单列数据时,将`DataFrame`自动转换为`Series`对象。例如: ```python # 旧代码(会触发警告) df = pd.read_excel("data.xlsx", usecols=[0], squeeze=True) ``` 当`usecols`仅选择一列且`squeeze=True`时,返回类型为`Series`[^2]。 2. **替换为新的实现方式** `pandas`建议通过显式调用`.squeeze()`方法实现相同功能: ```python # 新代码(推荐) df = pd.read_excel("data.xlsx", usecols=[0]).squeeze() ``` 此方法直接对读取后的`DataFrame`调用`.squeeze()`,将其压缩为`Series`(若仅有一列)。 3. **验证类型一致性** 通过检查返回类型确保功能正常: ```python print(type(df)) # 输出应为 <class 'pandas.core.series.Series'> ``` 4. **处理多列数据的情况** 如果读取多列数据(即使实际只有一列),`.squeeze()`不会生效,此时需结合`filter`或列选择: ```python df = pd.read_excel("data.xlsx", usecols=[0,1]).filter(items=[0]).squeeze() ``` #### 兼容性建议 - **同时支持新旧版本**: 可在代码中添加条件判断: ```python if pd.__version__ < '2.0.0': df = pd.read_excel("data.xlsx", usecols=[0], squeeze=True) else: df = pd.read_excel("data.xlsx", usecols=[0]).squeeze() ``` - **更新相关逻辑**: 检查所有依赖`squeeze=True`的代码段,确保替换后不影响后续操作(如`Series`特有的方法)。 ---
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值