产生10个1到2之间的随机小数存入list列表中,控制小数点后2位

时间: 2024-05-12 10:20:17 浏览: 81
代码如下: ```python import random # 生成10个1到2之间的随机小数 num_list = [round(random.uniform(1, 2), 2) for i in range(10)] print(num_list) ``` 输出结果: ``` [1.87, 1.03, 1.65, 1.35, 1.99, 1.19, 1.69, 1.08, 1.03, 1.66] ```
相关问题

pycharm 2、编写程序,提示用户输入若干整数组成数列,用逗号或空格等字符隔开。 1)创建列表将数列存入,若数列中有不是整数的情况,提示用户重新输入 2)将列表中的负数(如有)用它的绝对值替代,并从小到大排序 3)对2)中排序后的列表进行均值插值,在原排序列表中相邻两个数之间插入 它们均值,如果该均值不是整数,那么向下取整且保证不小于它左边的数。举 例如下: 在列表[0,1,2,4,8,11]中插入相邻均值后变为: [0,0,1,1,2,3,4,6,8,9,11],其中红色的为插入的值。 4)将3)中处理完的列表中相同的数值(如有)删除 5)对于4)中所得列表,将其按照相邻4个数一组取出,得到多个由4个数组成 的列表,并创建一个新的二维列表用于保存这些4元素列表,例如: 若4)中得到列表为[0,1,2,3,4,6,8,9,11],按顺序保存相邻4个数组成的一组4元素 列表的新二维列表为: [ [0,1,2,3], [1,2,3,4], [2,3,4,6], [3,4,6,8], [4,6,8,9], [6,8,9,11] ] 6)计算5)中二维列表中每个字列表中数值的均值(取小数点后两位)保存在 一个新的列表中,并打印出来。例如5)中二维列表字列表取均值后: [1.5, 2.5, 3.75, 5.25, 6.75, 8.5]

以下是代码实现: ```python def is_int(num_str): """ 判断字符串是否为整数 """ try: int(num_str) return True except ValueError: return False def input_sequence(): """ 输入数列并存入列表中 """ while True: seq_str = input("请输入数列,用逗号或空格等字符隔开:") seq_list = seq_str.replace(",", " ").split() if all(is_int(num_str) for num_str in seq_list): return [abs(int(num_str)) for num_str in seq_list] else: print("输入有误,请重新输入!") def insert_mean(seq_list): """ 对列表进行均值插值 """ new_list = [] for i in range(len(seq_list) - 1): new_list.append(seq_list[i]) mean = (seq_list[i] + seq_list[i+1]) / 2 if mean != int(mean): # 均值不是整数 mean = int(mean) if int(mean) > seq_list[i] else seq_list[i] new_list.append(mean) new_list.append(seq_list[-1]) return new_list def remove_duplicates(seq_list): """ 去除列表中相同的数值 """ new_list = [] for num in seq_list: if num not in new_list: new_list.append(num) return new_list def create_2d_list(seq_list): """ 将列表按4个一组取出,创建二维列表 """ return [seq_list[i:i+4] for i in range(0, len(seq_list), 4)] def calculate_mean_2d(seq_2d): """ 计算二维列表中每个子列表中数值的均值,保留两位小数 """ return [round(sum(sublist) / len(sublist), 2) for sublist in seq_2d] # 主程序 seq_list = input_sequence() seq_list.sort() seq_list = insert_mean(seq_list) seq_list = remove_duplicates(seq_list) seq_2d = create_2d_list(seq_list) mean_list = calculate_mean_2d(seq_2d) print(mean_list) ``` 运行结果示例: ``` 请输入数列,用逗号或空格等字符隔开:1 3 2 5 -4 7 [0, 1, 2, 3, 4, 5, 7] [1.5, 2.5, 3.0, 4.0, 5.5, 6.0] ```

using namespace std; list<char>DecTo2816(double d,unsigned r) { stack<char>intPart; //存储整数部分的转换结果 queue<char>fraPart; //存储小数部分的转换结果 list<char>result; //存储总的转换结果 int intp = (int)d; double frap = d - intp; //intp-整数值,frap-小数值 int res; //表示余数或某数值的整数部分 while (intp) //转换整数部分:将余数转换为字符存入stack<char>intPart { res = intp % r; //取余,若余数<=9则存入对应数字字符,否则存入’A’及以后字母 //……编程任务:完成余下部分 } while (!intPart.empty()) //编程任务(2):将stack<char>intPart数据存入到result { //…… } if (frap == 0)return result; //如果d不包含小数部分则无须继续转换 //以下为转换小数部分,转换结果放入queue<char> fraPart result.push_back('.'); for (int k = 1; k <= 5; k++)//转换结果最多保留到小数点后面5位, { res =(int)( r * frap); //小数部分乘r取整 //……编程任务 } while (!fraPart.empty()) //将小数部分的转换结果存入list<char>result { result.push_back(fraPart.front()); fraPart.pop(); } return result; }

这段代码是一个将十进制数转换为二八进制的函数。函数的输入参数包括一个 double 类型的十进制数 d 和一个 unsigned 类型的进制数 r,输出结果为一个存储转换结果的 list<char> 类型的变量 result。函数的实现过程如下: 1. 将整数部分和小数部分分开进行转换,整数部分的转换结果存入 stack<char> 类型的变量 intPart,小数部分的转换结果存入 queue<char> 类型的变量 fraPart。 2. 整数部分的转换采用不断取余法,每次将余数转换为对应的字符存入 intPart 中。 3. 将 intPart 中的数据依次取出存入 result 中。 4. 如果 d 不包含小数部分,则直接返回 result。 5. 小数部分的转换采用乘 r 取整法,每次将整数部分转换为对应的字符存入 fraPart 中。 6. 将 fraPart 中的数据依次取出存入 result 中。 需要注意的是,这段代码中省略了转换整数部分的部分代码和转换小数部分的部分代码,需要补充完整。此外,该函数的转换结果最多保留到小数点后面5位。
阅读全文

相关推荐

最新推荐

recommend-type

C#中decimal保留2位有效小数的实现方法

在处理decimal数值时,有时我们需要确保结果精确地保留到指定的小数位数,例如2位有效小数。以下介绍三种在C#中实现decimal保留2位有效小数的方法。 1. **使用Math.Round方法**: Math.Round方法提供了对数字进行...
recommend-type

go浮点数转字符串保留小数点后N位的完美解决方法

1. `fmt.Sprintf("%.2f", 123.123)`:这会保留2位小数,但可能会有小数点后无效的0。 2. `fmt.Sprintf("%g", 123.00)`:`%g`模式会自动去除小数点后的无效0,但无法保证保留固定位数。 3. `strconv.FormatFloat(a, '...
recommend-type

c语言float类型小数点后位数

C语言 Float 类型小数点后位数 ...在 C 语言中,Float 类型的小数点后位数为 6~7 位,而双精度浮点型的小数点后位数为 15~16 位。了解 Float 类型的小数点后位数可以帮助开发者更好地理解和应用浮点数类型。
recommend-type

python练习题 :用户任意输入10个整数到列表中,然后由大到小排列并输出。

输入10个整数并排序,可以先将输入的字符串转化为整数列表,再使用`sort()`方法;判断输入的数是正数、负数还是零,可以使用条件语句;实现特定的输出格式,通常涉及嵌套循环和条件判断;输出九九乘法表,可以使用两...
recommend-type

Java指定保留小数位数的方法

在上面的代码中,我们可以看到,需要保留小数位数的方法有很多种,但是一般来说,我们需要一个通用的方法来保留小数位数。因此,我们可以使用自定义工具类来实现这一功能。例如,使用以下代码可以将小数保留两位: `...
recommend-type

基于Python和Opencv的车牌识别系统实现

资源摘要信息:"车牌识别项目系统基于python设计" 1. 车牌识别系统概述 车牌识别系统是一种利用计算机视觉技术、图像处理技术和模式识别技术自动识别车牌信息的系统。它广泛应用于交通管理、停车场管理、高速公路收费等多个领域。该系统的核心功能包括车牌定位、车牌字符分割和车牌字符识别。 2. Python在车牌识别中的应用 Python作为一种高级编程语言,因其简洁的语法和强大的库支持,非常适合进行车牌识别系统的开发。Python在图像处理和机器学习领域有丰富的第三方库,如OpenCV、PIL等,这些库提供了大量的图像处理和模式识别的函数和类,能够大大提高车牌识别系统的开发效率和准确性。 3. OpenCV库及其在车牌识别中的应用 OpenCV(Open Source Computer Vision Library)是一个开源的计算机视觉和机器学习软件库,提供了大量的图像处理和模式识别的接口。在车牌识别系统中,可以使用OpenCV进行图像预处理、边缘检测、颜色识别、特征提取以及字符分割等任务。同时,OpenCV中的机器学习模块提供了支持向量机(SVM)等分类器,可用于车牌字符的识别。 4. SVM(支持向量机)在字符识别中的应用 支持向量机(SVM)是一种二分类模型,其基本模型定义在特征空间上间隔最大的线性分类器,间隔最大使它有别于感知机;SVM还包括核技巧,这使它成为实质上的非线性分类器。SVM算法的核心思想是找到一个分类超平面,使得不同类别的样本被正确分类,且距离超平面最近的样本之间的间隔(即“间隔”)最大。在车牌识别中,SVM用于字符的分类和识别,能够有效地处理手写字符和印刷字符的识别问题。 5. EasyPR在车牌识别中的应用 EasyPR是一个开源的车牌识别库,它的c++版本被广泛使用在车牌识别项目中。在Python版本的车牌识别项目中,虽然项目描述中提到了使用EasyPR的c++版本的训练样本,但实际上OpenCV的SVM在Python中被用作车牌字符识别的核心算法。 6. 版本信息 在项目中使用的软件环境信息如下: - Python版本:Python 3.7.3 - OpenCV版本:opencv*.*.*.** - Numpy版本:numpy1.16.2 - GUI库:tkinter和PIL(Pillow)5.4.1 以上版本信息对于搭建运行环境和解决可能出现的兼容性问题十分重要。 7. 毕业设计的意义 该项目对于计算机视觉和模式识别领域的初学者来说,是一个很好的实践案例。它不仅能够让学习者在实践中了解车牌识别的整个流程,而且能够锻炼学习者利用Python和OpenCV等工具解决问题的能力。此外,该项目还提供了一定量的车牌标注图片,这在数据不足的情况下尤其宝贵。 8. 文件信息 本项目是一个包含源代码的Python项目,项目代码文件位于一个名为"Python_VLPR-master"的压缩包子文件中。该文件中包含了项目的所有源代码文件,代码经过详细的注释,便于理解和学习。 9. 注意事项 尽管该项目为初学者提供了便利,但识别率受限于训练样本的数量和质量,因此在实际应用中可能存在一定的误差,特别是在处理复杂背景或模糊图片时。此外,对于中文字符的识别,第一个字符的识别误差概率较大,这也是未来可以改进和优化的方向。
recommend-type

管理建模和仿真的文件

管理Boualem Benatallah引用此版本:布阿利姆·贝纳塔拉。管理建模和仿真。约瑟夫-傅立叶大学-格勒诺布尔第一大学,1996年。法语。NNT:电话:00345357HAL ID:电话:00345357https://theses.hal.science/tel-003453572008年12月9日提交HAL是一个多学科的开放存取档案馆,用于存放和传播科学研究论文,无论它们是否被公开。论文可以来自法国或国外的教学和研究机构,也可以来自公共或私人研究中心。L’archive ouverte pluridisciplinaire
recommend-type

网络隔离与防火墙策略:防御网络威胁的终极指南

![网络隔离](https://www.cisco.com/c/dam/en/us/td/i/200001-300000/270001-280000/277001-278000/277760.tif/_jcr_content/renditions/277760.jpg) # 1. 网络隔离与防火墙策略概述 ## 网络隔离与防火墙的基本概念 网络隔离与防火墙是网络安全中的两个基本概念,它们都用于保护网络不受恶意攻击和非法入侵。网络隔离是通过物理或逻辑方式,将网络划分为几个互不干扰的部分,以防止攻击的蔓延和数据的泄露。防火墙则是设置在网络边界上的安全系统,它可以根据预定义的安全规则,对进出网络
recommend-type

在密码学中,对称加密和非对称加密有哪些关键区别,它们各自适用于哪些场景?

在密码学中,对称加密和非对称加密是两种主要的加密方法,它们在密钥管理、计算效率、安全性以及应用场景上有显著的不同。 参考资源链接:[数缘社区:密码学基础资源分享平台](https://wenku.csdn.net/doc/7qos28k05m?spm=1055.2569.3001.10343) 对称加密使用相同的密钥进行数据的加密和解密。这种方法的优点在于加密速度快,计算效率高,适合大量数据的实时加密。但由于加密和解密使用同一密钥,密钥的安全传输和管理就变得十分关键。常见的对称加密算法包括AES(高级加密标准)、DES(数据加密标准)、3DES(三重数据加密算法)等。它们通常适用于那些需要
recommend-type

我的代码小部件库:统计、MySQL操作与树结构功能

资源摘要信息:"leetcode用例构造-my-widgets是作者为练习、娱乐或实现某些项目功能而自行开发的一个代码小部件集合。这个集合中包含了作者使用Python语言编写的几个实用的小工具模块,每个模块都具有特定的功能和用途。以下是具体的小工具模块及其知识点的详细说明: 1. statistics_from_scratch.py 这个模块包含了一些基础的统计函数实现,包括但不限于均值、中位数、众数以及四分位距等。此外,它还实现了二项分布、正态分布和泊松分布的概率计算。作者强调了使用Python标准库(如math和collections模块)来实现这些功能,这不仅有助于巩固对统计学的理解,同时也锻炼了Python编程能力。这些统计函数的实现可能涉及到了算法设计和数学建模的知识。 2. mysql_io.py 这个模块是一个Python与MySQL数据库交互的接口,它能够自动化执行数据的导入导出任务。作者原本的目的是为了将Leetcode平台上的SQL测试用例以字典格式自动化地导入到本地MySQL数据库中,从而方便在本地测试SQL代码。这个模块中的MysqlIO类支持将MySQL表导出为pandas.DataFrame对象,也能够将pandas.DataFrame对象导入为MySQL表。这个工具的应用场景可能包括数据库管理和数据处理,其内部可能涉及到对数据库API的调用、pandas库的使用、以及数据格式的转换等编程知识点。 3. tree.py 这个模块包含了与树结构相关的一系列功能。它目前实现了二叉树节点BinaryTreeNode的构建,并且提供了从列表构建二叉树的功能。这可能涉及到数据结构和算法中的树形结构、节点遍历、树的构建和操作等。利用这些功能,开发者可以在实际项目中实现更高效的数据存储和检索机制。 以上三个模块构成了my-widgets库的核心内容,它们都以Python语言编写,并且都旨在帮助开发者在特定的编程场景中更加高效地完成任务。这些工具的开发和应用都凸显了作者通过实践提升编程技能的意图,并且强调了开源精神,即将这些工具共享给更广泛的开发者群体,以便他们也能够从中受益。 通过这些小工具的使用,开发者可以更好地理解编程在不同场景下的应用,并且通过观察和学习作者的代码实现,进一步提升自己的编码水平和问题解决能力。"