Python 数组科学计数法转换:保留整数并过滤非科学计数法格式
def convert_scientific_notation(arr):\n """将一维数组中科学计数法格式的值转换为正常格式,保留整数部分,并过滤掉非科学计数法格式的值。\n\n Args:\n arr (list): 一维数组,可能包含科学计数法格式的值。\n\n Returns:\n list: 处理后的数组,包含转换为正常格式的科学计数法值和原始的非科学计数法值。\n """\n new_arr = []\n\n for item in arr:\n # 判断是否为科学计数法格式\n if 'e' in str(item):\n try:\n value = float(item)\n # 转换为正常格式,保留整数\n value = int(value)\n new_arr.append(value)\n except ValueError:\n # 非法的科学计数法格式,跳过\n continue\n else:\n # 非科学计数法格式,直接添加到新数组\n new_arr.append(item)\n\n return new_arr\n\n# 使用示例\narr = [1.23e-4, 2.34e5, '123', 'abc', '1.23', 4.56e7]\nnew_arr = convert_scientific_notation(arr)\nprint(new_arr)\n\n# 输出结果:\n# [0, 234000, '123', 'abc', 1, 45600000]
原文地址: https://www.cveoy.top/t/topic/p4Hl 著作权归作者所有。请勿转载和采集!