当前位置: 首页 > wzjs >正文

资源优化排名网站我公司要网站建设

资源优化排名网站,我公司要网站建设,网站建设方案 市场分析,安康养老院收费价格表Python数组学习之旅:数据结构的奇妙冒险 第一天:初识数组的惊喜 阳光透过窗帘缝隙洒进李明的房间,照亮了他桌上摊开的笔记本和笔记本电脑。作为一名刚刚转行的金融分析师,李明已经坚持学习Python编程一个月了。他的眼睛因为昨晚熬夜编程而微微发红,但脸上却挂着期待的微…

Python数组学习之旅:数据结构的奇妙冒险

第一天:初识数组的惊喜

阳光透过窗帘缝隙洒进李明的房间,照亮了他桌上摊开的笔记本和笔记本电脑。作为一名刚刚转行的金融分析师,李明已经坚持学习Python编程一个月了。他的眼睛因为昨晚熬夜编程而微微发红,但脸上却挂着期待的微笑。今天,他决定探索数据结构的新领域。

"处理10,000个股票价格数据时,为什么程序会这么慢呢?"李明揉了揉太阳穴,疑惑地看着他的代码。屏幕上,一个简单的循环函数正在缓慢地处理着他收集的过去五年某支股票的每日收盘价。

就在这时,他的手机震动起来。是他的编程导师王教授发来的消息:

“遇到瓶颈了?考虑尝试一下Python的array模块。在处理大量同类型数据时,array比list更高效哦!”

李明的眼睛一亮。他立即打开浏览器,搜索关于Python array的资料。他快速敲击键盘,测试着新发现的知识:

import array# 创建一个浮点数数组
stock_prices = array.array('d')  # 'd'表示双精度浮点数# 添加一些股票价格数据
stock_prices.append(142.58)
stock_prices.append(143.75)
stock_prices.append(144.32)print(stock_prices)  # 输出:array('d', [142.58, 143.75, 144.32])

看着屏幕上输出的结果,李明若有所思。与普通列表不同,array要求所有元素必须是相同类型的。这看起来是一个限制,但实际上是它高效运行的关键原因之一。

他关掉电脑,拉上窗帘,躺在床上。但他的大脑并没有停止运转——他已经迫不及待地想要明天继续他的数组探索之旅了。

第二天:类型码的奥秘

清晨,李明从一个关于数字和代码的梦中醒来。梦里,各种符号在他脑海中飞舞:‘i’、‘d’、‘f’、‘u’…这些神秘的字符代表着什么?

带着这个疑问,他一边啜饮着热咖啡,一边打开电脑。他决定深入研究array模块中的类型码。

"这些类型码究竟是什么?为什么要用’d’来表示双精度浮点数?"李明喃喃自语,手指在键盘上快速敲打。

经过几小时的研究和实验,他的笔记本上已经密密麻麻地记满了各种类型码:

import array# 有符号整数
signed_int_array = array.array('i', [1, 2, 3, 4])  # 有符号整数
unsigned_int_array = array.array('I', [1, 2, 3, 4])  # 无符号整数# 浮点数
float_array = array.array('f', [1.1, 2.2, 3.3])  # 单精度浮点数
double_array = array.array('d', [1.1, 2.2, 3.3])  # 双精度浮点数# 字符
char_array = array.array('u', 'hello')  # Unicode字符

"原来如此!"李明恍然大悟,“这些类型码其实是C语言中的类型表示,这难怪array在处理同类型数据时比list更高效——它们在内存中的存储方式更接近底层编程语言!”

下午,阳光正好,李明决定用新学到的知识改进他的股票数据处理程序。他小心翼翼地将数据从list转换为array,然后运行程序。奇迹发生了!处理速度提高了将近3倍!

李明兴奋地一跃而起,差点打翻了咖啡杯。他迫不及待地拿起手机,给他的老朋友张晓打电话分享这个好消息。

第三天:数据结构的对决

"真的有那么神奇吗?"张晓隔着咖啡厅的桌子,半信半疑地看着李明。作为一位资深的金融分析师,张晓对数据处理的效率同样很关心。

"当然!但别只相信我的话,我们可以做个实验,"李明笑着打开笔记本电脑,“让我们系统地比较一下array和list在不同场景下的表现。”

两人头碰着头,开始设计实验。咖啡厅的角落里,充满了他们轻声的讨论和键盘的敲击声。

测试1:内存使用的较量

李明敲击键盘,专注地编写测试代码:

import array
import sys# 创建包含10000个整数的list和array
int_list = list(range(10000))
int_array = array.array('i', range(10000))# 比较内存占用
list_size = sys.getsizeof(int_list) + sum(sys.getsizeof(i) for i in int_list)
array_size = sys.getsizeof(int_array)print(f"List size: {list_size} bytes")
print(f"Array size: {array_size} bytes")

在这里插入图片描述

程序运行完毕,屏幕上显示出惊人的结果:

List size: 368056 bytes
Array size: 40420 bytes

"太不可思议了!"李明指着屏幕上的数字,眼中闪烁着兴奋的光芒,“array的内存占用只有list的九分之一左右!整整节省了300多KB的内存!”

张晓推了推眼镜,惊讶地说:“368KB对比40KB,差距如此巨大!难怪处理大型金融数据时array更合适。想象一下,如果是处理上百万条记录,这种内存节省将会非常显著。”

测试2:速度的比拼

两人继续比较了两种数据结构的基本操作速度。

"让我们测试一下访问元素的速度,"李明提议道,“我要使用更多的数据来确保结果准确。”

import array
import time# 准备测试数据
size = 100000000
test_list = list(range(size))
test_array = array.array('i', range(size))# 测试访问元素的速度
start = time.time()
for i in range(10000000):_ = test_list[i]
list_access_time = time.time() - startstart = time.time()
for i in range(10000000):_ = test_array[i]
array_access_time = time.time() - startprint(
http://www.dtcms.com/wzjs/613571.html

相关文章:

  • 现在网站开发和软件开发七台河新闻在线直播
  • 娱乐网站代理商怎么做网站开发主要内容和要求
  • 黔东南建设厅官方网站最火的自媒体平台排名
  • 网站建设課程wordpress汉化版
  • wordpress新建网站后台无法登陆电视直播网站建设
  • 怎么做个手机版的网站吗免费生成网页的网站
  • 医院网站建设需求分析wordpress 安装ssl
  • 怎么创建卡密网站动画设计图
  • 北京平台网站建设多少钱厦门网站建设服务
  • 海外酒店网站建设逻辑网络设计的目标是什么?
  • 给朋友做的相册网站没有了个人网站推广怎么做
  • 网站设计网站设计公司价格品牌网络营销推广
  • 设计自学网站哪个好网站制作公司怎样帮客户做优化
  • 三合一网站怎么建立网站设计ui
  • 驻马店网站网站建设网站权重如何做
  • 网站内外链接怎么做个人博客系统wordpress
  • 无锡响应式网站建设苏州网站设计哪家公司好
  • 永兴房产网站付费的网站推广该怎么做
  • 网站做的支付宝接口吗网站添加在线qq聊天
  • wordpress ask me网站seo置顶 乐云践新专家
  • 青岛网站建设哪个好建设网站简单吗
  • 律师网站建设哪家专业如何恢复网站
  • 西安网站 建设长沙建站
  • 余姚公司网站建设阳江市做网站
  • 免费建站团队wordpress 图片 宽 高
  • 连云港公司企业网站建设百度问答下载安装
  • vue做电商网站网站开发应注意哪些问题
  • 青岛网站设计制作wordpress如何清缓存
  • 公司网站维护费用计哪个科目wordpress文章管理插件
  • 网站点击按钮回到页面顶部怎么做seowhy官网