Python实现列表中非负数保留,负数转化为指定的数值方式


Posted in Python onJune 04, 2020

简单的小练习,实现将一个指定列表中的数值进行转化,对于其中的非负数不作处理,对于负数需要转化为制定的数值,很简单就不多说了,下面是具体的实现:

#!usr/bin/env python
#encoding:utf-8
from __future__ import division
 
'''
__Author__:沂水寒城
功能:Python实现列表中非负数保留,负数转化为指定的数值
'''
def handle_list_negative_nums(data_list,specificvalue=0):
 '''
 处理列表中的负数,转化为指定的数值
 '''
 res_list=[]
 for one in data_list:
  if one>=0:
   res_list.append(one)
  else:
   res_list.append(specificvalue)
 print 'res_list is:',res_list
 res_list2=map(lambda one: one if one>=0 else specificvalue,data_list)
 print 'res_list2 is:',res_list2
 
if __name__ == '__main__':
 data_list=[1.2,4,5,-9,-0.4,-34,2,3,4,0]
 handle_list_negative_nums(data_list,specificvalue=0)
 handle_list_negative_nums(data_list,specificvalue=9)

结果如下:

res_list is: [1.2, 4, 5, 0, 0, 0, 2, 3, 4, 0]
res_list2 is: [1.2, 4, 5, 0, 0, 0, 2, 3, 4, 0]
res_list is: [1.2, 4, 5, 9, 9, 9, 2, 3, 4, 0]
res_list2 is: [1.2, 4, 5, 9, 9, 9, 2, 3, 4, 0]

根据不同的需要也可以做相应的修改会有不同的适用场景。

补充知识:关于负数以补码形式在计算机中存储

以char类型来说明,图片中的是 -1 在计算中的存储形式(-1的原码为1000 0001 取反加1得到补码 1111 1111)

Python实现列表中非负数保留,负数转化为指定的数值方式

补码、源码、反码的作用:

1、补码:解决负数加法运算正负零问题,弥补了反码的不足。

2、原码:可直观反映出数据的大小。

3、反码:解决负数加法运算问题,将减法运算转换为加法运算,从而简化运算规则

使用补码,可以将符号位和其它位统一处理;同时,减法也可按加法来处理。另外,两个用补

码表示的数相加时,如果最高位(符号位)有进位,则进位被舍弃。

以上这篇Python实现列表中非负数保留,负数转化为指定的数值方式就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python中requests小技巧
May 10 Python
解决Pycharm出现的部分快捷键无效问题
Oct 22 Python
Python获取网段内ping通IP的方法
Jan 31 Python
Python自动生成代码 使用tkinter图形化操作并生成代码框架
Sep 18 Python
python元组的概念知识点
Nov 19 Python
PyCharm下载和安装详细步骤
Dec 17 Python
Ranorex通过Python将报告发送到邮箱的方法
Jan 12 Python
Python 一行代码能实现丧心病狂的功能
Jan 18 Python
基于Numba提高python运行效率过程解析
Mar 02 Python
python闭包、深浅拷贝、垃圾回收、with语句知识点汇总
Mar 11 Python
python 实现有道翻译功能
Feb 26 Python
Python+腾讯云服务器实现每日自动健康打卡
Dec 06 Python
Python新手学习装饰器
Jun 04 #Python
基于python 取余问题(%)详解
Jun 03 #Python
Python中关于logging模块的学习笔记
Jun 03 #Python
Python学习之os模块及用法
Jun 03 #Python
Python爬虫HTPP请求方法有哪些
Jun 03 #Python
什么是Python变量作用域
Jun 03 #Python
Python Flask框架实现简单加法工具过程解析
Jun 03 #Python
You might like
在同一窗体中使用PHP来处理多个提交任务
2006/10/09 PHP
PHP中如何实现常用邮箱的基本判断
2014/01/07 PHP
叫你如何修改Nginx与PHP的文件上传大小限制
2014/09/10 PHP
PHP扩展开发教程(总结)
2015/11/04 PHP
php大小写转换函数(strtolower、strtoupper)用法介绍
2017/11/17 PHP
PHP实现压缩图片尺寸并转为jpg格式的方法示例
2018/05/10 PHP
JavaScript高级程序设计(第3版)学习笔记5 js语句
2012/10/11 Javascript
javascript获取鼠标点击元素对象(示例代码)
2013/12/20 Javascript
JavaScript中的pow()方法使用详解
2015/06/15 Javascript
AngularJS 简单应用实例
2016/07/28 Javascript
详解在Angularjs中ui-sref和$state.go如何传递参数
2017/04/24 Javascript
在vscode里使用.vue代码模板的方法
2018/04/28 Javascript
vue实现自定义多选与单选的答题功能
2018/07/05 Javascript
nodejs高大上的部署方式(PM2)
2018/09/11 NodeJs
js实现同一个页面,多个enter事件绑定的示例
2018/10/10 Javascript
服务端预渲染之Nuxt(使用篇)
2019/04/08 Javascript
vue框架制作购物车小球动画效果实例代码
2019/09/26 Javascript
Vue调用后端java接口的实例代码
2019/10/28 Javascript
vue element-ui实现动态面包屑导航
2019/12/23 Javascript
详解javascript脚本何时会被执行
2021/02/05 Javascript
[44:50]2018DOTA2亚洲邀请赛 4.1 小组赛 A组 TNC vs VG
2018/04/02 DOTA
[40:05]LGD vs Winstrike 2018国际邀请赛小组赛BO2 第二场 8.17
2018/08/18 DOTA
安装Python的教程-Windows
2017/07/22 Python
python+logging+yaml实现日志分割
2019/07/22 Python
python构建指数平滑预测模型示例
2019/11/21 Python
基于Python实现扑克牌面试题
2019/12/11 Python
python小程序之4名牌手洗牌发牌问题解析
2020/05/15 Python
Python爬虫入门教程01之爬取豆瓣Top电影
2021/01/24 Python
介绍一下SQL中union,intersect和minus
2012/04/05 面试题
MYSQL支持事务吗
2013/08/09 面试题
平面设计专业大学生职业规划书
2014/03/12 职场文书
2015年学生会主席工作总结
2015/04/21 职场文书
导游词幽默开场白
2019/06/26 职场文书
虚拟机linux端mysql数据库无法远程访问的解决办法
2021/05/26 MySQL
MySQL数据库索引的最左匹配原则
2021/11/20 MySQL
Li list-style-image 图片垂直居中实现方法
2023/05/21 HTML / CSS