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

网站制作费会计分录怎么做音乐推广平台有哪些

网站制作费会计分录怎么做,音乐推广平台有哪些,ai效果图网站,外贸网站搭建推广按指定大小合并数据块 1.函数 combine(source, maxsize) 的功能2.文件操作部分3.示例流程4.典型应用场景5.注意事项6.改进建议 🚀 本文讨论的代码段来自《Python Cookbook》的《2.14.合并拼接字符串》。 针对下面这段代码,我们一起来分析一下 def combi…

按指定大小合并数据块

  • 1.函数 combine(source, maxsize) 的功能
  • 2.文件操作部分
  • 3.示例流程
  • 4.典型应用场景
  • 5.注意事项
  • 6.改进建议

🚀 本文讨论的代码段来自《Python Cookbook》的《2.14.合并拼接字符串》。

针对下面这段代码,我们一起来分析一下

def combine(source, maxsize):parts = []size = 0for part in source:parts.append(part)size += len(part)if size > maxsize:yield ''.join(parts)parts = []size = 0yield ''.join(parts)# 结合文件操作
with open('filename', 'w') as f:for part in combine(sample(), 32768):f.write(part)

这段代码定义了一个生成器函数 combine(),用于将多个小块数据(如字符串或字节)按指定大小(maxsize)合并成较大的块,然后通过文件操作写入文件。下面逐步解析其逻辑和用途:

1.函数 combine(source, maxsize) 的功能

  • 输入参数
    • source:一个可迭代对象(如列表、生成器),提供多个数据块(如字符串或字节)。
    • maxsize:合并后的最大尺寸阈值(如 32768 32768 32768 字节)。
  • 输出:生成合并后的较大块(通过 yield 逐步返回)。
  • 核心逻辑
    • 初始化空列表 parts 和计数器 size
    • 遍历 source 中的每个 part
      • part 加入 parts 列表,并累加其长度到 size
      • 如果 size 超过 maxsize,则合并 parts 中的所有块(''.join(parts)),通过 yield 返回合并结果,并清空 partssize
    • 遍历结束后,返回剩余的未合并的块(yield ''.join(parts))。
  • 关键点
    • 这是一个生成器函数(使用 yield),不会一次性返回所有结果,而是按需生成。
    • 合并的触发条件是 size > maxsize,因此实际返回的块大小可能略大于 maxsize(取决于最后一个 part 的大小)。

2.文件操作部分

with open('filename', 'w') as f:for part in combine(sample(), 32768):f.write(part)
  • 作用:将 combine() 生成的合并块逐块写入文件。
  • 细节
    • sample():假设是一个生成数据块的函数(如返回字符串列表或生成器)。
    • combine(sample(), 32768):将 sample() 的数据按每块最大 32768 32768 32768 字节合并。
    • f.write(part):将合并后的块写入文件。

3.示例流程

假设 sample() 返回以下字符串列表,且 maxsize=10

def sample():return ["Hello", " ", "World", "!", " How", " are", " you?"]# 调用 combine(sample(), 10)

执行过程:

  • 第一次合并:"Hello" + " " + "World" → 长度 5+1+5=11 > 10 → 返回 "Hello World"
  • 第二次合并:"!" + " How" + " are" → 长度 1+4+4=9 ≤ 10,继续。
  • 第三次合并:加入 " you?" → 长度 9+5=14 > 10 → 返回 "! How are"
  • 最后剩余 " you?" → 返回 " you?"

最终写入文件的内容:

Hello World! How are you?

4.典型应用场景

  • 大文件分块处理:例如从网络或数据库读取大量小数据块时,合并为较大的块后再写入文件,减少 I/O 操作次数。
  • 内存优化:避免一次性加载所有数据到内存(适合处理大型数据流)。

5.注意事项

  • 块大小的准确性
    • 实际合并后的块大小可能超过 maxsize(因为当前 part 加入后才会检查条件)。
    • 如果需要严格不超过 maxsize,需在加入 part 前检查 size + len(part)
  • 数据边界问题:如果 part 是二进制数据(如字节),需用 b''.join(parts)
  • 生成器的惰性combine() 是惰性求值的,适合处理流式数据(如从网络逐块读取)。

6.改进建议

若需严格限制块大小,可调整逻辑如下:

def combine_strict(source, maxsize):parts = []size = 0for part in source:if size + len(part) > maxsize:if parts:  # 避免空块yield ''.join(parts)parts = []size = 0parts.append(part)size += len(part)if parts:yield ''.join(parts)

这样能确保每个块严格满足 size <= maxsize


文章转载自:

http://9oQ2e1NR.hbxnb.cn
http://6psHfdeJ.hbxnb.cn
http://anfgtMWN.hbxnb.cn
http://9zFU4Jnf.hbxnb.cn
http://vcmtmlUu.hbxnb.cn
http://H1PY7JjQ.hbxnb.cn
http://xKg7b7YY.hbxnb.cn
http://WHhHsnQm.hbxnb.cn
http://R914qw4J.hbxnb.cn
http://jYRmJHWJ.hbxnb.cn
http://UYHGGgQk.hbxnb.cn
http://KsC1aYcJ.hbxnb.cn
http://rGSuCF5D.hbxnb.cn
http://aW5ftRX5.hbxnb.cn
http://b8JnWtpF.hbxnb.cn
http://TuWV2a6a.hbxnb.cn
http://yAUeWv3q.hbxnb.cn
http://RXEuHggB.hbxnb.cn
http://cG48VMth.hbxnb.cn
http://ZixNcwgR.hbxnb.cn
http://WcRbu74E.hbxnb.cn
http://10jWwQxp.hbxnb.cn
http://3iqP4aUb.hbxnb.cn
http://8nw9UYTF.hbxnb.cn
http://05hTxE4a.hbxnb.cn
http://NcEGUrne.hbxnb.cn
http://XCE7gGN4.hbxnb.cn
http://1W4BxPMJ.hbxnb.cn
http://J7qoyx8G.hbxnb.cn
http://M0aMS68I.hbxnb.cn
http://www.dtcms.com/wzjs/780753.html

相关文章:

  • 海门建设局网站wordpress自媒体模版
  • 做网站需要什么权限华为荣耀官网
  • h5 做的网站 价格直播平台推荐
  • 机械设备网站建设客户管理系统crm
  • 想做个电影网站该怎么做公司网站开发语言
  • 城乡住房建设部网站徐州最新消息今天
  • 阿克苏网站怎么做seo公众号平台小程序
  • 免费做印章的网站网站上传在空间哪里去了
  • 招一个程序员可以做网站吗站长工具搜索
  • iis提示网站建设中室内设计师联盟首页
  • 做二手车网站需要什么野望是什么意思
  • 华艺网站建设手机应用商店软件
  • 做网站的公司没有技术最近在线直播免费观看
  • asp网站开发实训报告wordpress首页添加音乐
  • 服务器平台搭建抖音seo
  • 生物科技网站建设方案seo推广视频隐迅推专业
  • 大学网站建设的目标免费网络电话app
  • 建网站 几个链接视频推广平台有哪些
  • 企业高端网站建设公司线上超市购物平台有哪些
  • 购物网站产品做促销能赚钱吗平面设计做兼职网站
  • 建网站需要哪些技术营销型网站建设个人总结怎么写
  • 如何做网站超链接深圳包装设计公司排名前十强
  • 长沙做网站推广公司咨询dedecms 网站访问量
  • 百度快速收录接口网站排名seo
  • 哪个网站能帮助做试卷电商运营中如何做好证据的保全
  • 广州做包包的网站好wordpress模板修改服务器
  • 广州网站开发外包天津建设工程评标专家网站
  • 成都科技网站建设费中小型企业网络拓扑图及配置
  • 成都建设网站公司哪家好江西省住房和城乡建设厅网站
  • 企业网站模板设计帮企业建网站