【教学类-19-03】20221127《ABBABB式-规律排序-A4竖版2份》(中班)

news2024/11/27 6:35:53

展示效果:

单人使用样式:

  单页打印样式

 背景需求:

中班幼儿需要掌握ABBABB的排序规律

  

前文制作了ABCABC单元格色块,完全套用ABC排序word表格,调整python的代码,随机生成ABB排序样式,引导幼儿进行ABBABB固定颜色涂色。

 Word模板设置 

0、就改一个标题

 其他都和ABC模板一模一样。

1、插入表格1*9、

2、左侧的空心黏贴表和右侧的灰色黏贴边都是”插入-形状-矩形“

3、表格的框线:粗的6磅,细的1.5磅

代码设计:

# https://www.codenong.com/cs106022019/

'''

作者:阿夏
时间:2022年11月27日ABBABB规律填色 竖版2份4条)
提取两个数字,并将第2个数字做成2份,

'''

from docx import Document
from docx.oxml.ns import nsdecls
from docx.oxml import parse_xml
import random,os

# 新建表行数
rowsNum = int(input('行数(1行)\n'))
# 新建表列数
colsNum = int(input('列数(只要3个=ABB)\n'))
Num = int(input('每套题目随机抽取几个不重复颜色(一共9个颜色,抽9个)\n'))
rowrow= int(input('几条?(4)\n'))
num= int(input('生成多少份?\n'))

# 表格首行背景色设置
# 背景色,根据需要调整,可参考站长之家选色 http://tool.chinaz.com/Tools/PageColor.aspx
# (米罗12色蜡笔(去掉白色'FFFFFF'和黑色'000000',黑色涂色很容易显脏)
# # 白色\#黑色\# 灰色\# 红色\# 橘黄\# 黄色\# 森林绿\# 黄绿色\# 蓝色\# 青色(天蓝)\# 靛青色(紫色)\# 粉红
colorall=['FFFFFF','000000','CCCCCC','FF0000','FF8000','FFFF00','228B22','7FFF00','0000FF','00FFFF','4B0082','FFC0CB']
colorsmall=colorall[3:]# 排除白色和黑色
print(colorsmall)

print('----------第2步:新建一个临时文件夹------------')
# 新建一个”装N份word和PDF“的文件夹
os.mkdir(r'C:\Users\jg2yXRZ\OneDrive\桌面\规律填色\零时Word')

for nn in range(1,num+1):    
        # for e in range(0,2):        # 一页两份
        doc = Document(r'C:\Users\jg2yXRZ\OneDrive\桌面\规律填色\规律填色模板(竖版9列ABBABB).docx')
        # # 方案一:一页中,第一套8个颜色和第2套9个颜色中间,只有1-2个不一样(大部分是2个不一样,少量1个不一样)
        # 随机抽取8个图案,
        colors=[]
        color1=random.sample(colorsmall,Num)        
        for c1 in color1:
                colors.append(c1)
        color2=random.sample(colorsmall,Num)
        for c2 in color1:
                colors.append(c2)
        print(colors)
       
        color=[]
        for tt in range(0,int(len(colors)/2)):
                color.append(colors[tt*2])  # 把单数图案填入1次 索引0、2、4、6
                for ee in range(2):  # 把双数图案复制2份 索引1,3,5,7  
                        color.append(colors[tt*2+1])  # 填入2次
        print(color)
        # ['FF9912', '4B0082', '4B0082', 'FF0000', '00FFFF', '00FFFF', '0000FF', '7FFF00', '7FFF00', 'FFC0CB', 'FFFF00', 'FFFF00', '228B22', 'FF9912', 'FF9912', '4B0082', 'FF0000', 'FF0000', '00FFFF', '0000FF', '0000FF', '7FFF00', 'FFC0CB', 'FFC0CB', 'FFFF00', '228B22', '228B22']
        print(len(color))
        # 27,实际需要8*3-24个

        # # 方案二:一页中,第一套8个颜色和第2套8个颜色是一样的。
        # color=[]
        # for e in range(0,3):      # 至少需要24个颜色(有重复)抽9个乘以3次=27个
        #         colors=random.sample(colorsmall,Num)  # 共9个颜色,如果抽8个,会出现ABB ABA AAB等样式,所以改成抽取9个,就不会有重复,因此就需要抽3次
        #         for k in colors:
        #                 color.append(k)
        # print(color)
        # # ['FF0000', 'FFFF00', '00FFFF', '7FFF00', 'FF9912', 'FFC0CB', 'CCCCCC', '0000FF', '7FFF00', 'FFC0CB', 'CCCCCC', '228B22', 'FFFF00', 'FF0000', '00FFFF', '4B0082']


        # 表格位置
        bg=[]
        for b in range(0,rowrow*2):                # 四个表
                for x in range(0,rowsNum):        # 1行*8列
                        for y in range(0,colsNum):                # 只要填充2个格子ABAB
                                ww='{}{}'.format(x,y)
                                bg.append(ww)
        print(bg)   
        # ['00', '01', '00', '01', '00', '01', '00', '01', '00', '01', '00', '01', '00', '01', '00', '01']

        for b in range(0,rowrow*2):      # 几条 0123 4行8个不重复色块
                if b==3:
                        pass
                elif b==7:
                        pass
                else:
                        table = doc.tables[b]          # 4567(8)行

                        for t in range(b*colsNum,b*colsNum+colsNum):   # 02
                                pp=int(bg[t][0])    
                                qq=int(bg[t][1])                 
                                k=color[t]  
                                print(k)                      # 
                        
                                shading_list = locals()    
                                shading_list['shading_elm_'+str(qq)] = parse_xml(r'<w:shd {} w:fill="{bgColor}"/>'.format(nsdecls('w'),bgColor = k))
                                table.rows[pp].cells[qq]._tc.get_or_add_tcPr().append(shading_list['shading_elm_'+str(qq)])
                        
        doc.save(r'C:\Users\jg2yXRZ\OneDrive\桌面\规律填色\零时Word\{}.docx'.format('%02d'%nn))   
        from docx2pdf import convert

        # docx 文件另存为PDF文件
        inputFile = r"C:/Users/jg2yXRZ/OneDrive/桌面/规律填色/零时Word/{}.docx".format('%02d'%nn)  # 要转换的文件:已存在
        outputFile = r"C:/Users/jg2yXRZ/OneDrive/桌面/规律填色/零时Word/{}.pdf".format('%02d'%nn)  # 要生成的文件:不存在
        # 先创建 不存在的 文件
        f1 = open(outputFile, 'w')
        f1.close()
        # 再转换往PDF中写入内容
        convert(inputFile, outputFile)
    
print('----------第4步:把都有PDF合并为一个打印用PDF------------')
    
# 多个PDF合并(CSDN博主「红色小小螃蟹」,https://blog.csdn.net/yangcunbiao/article/details/125248205)
import os
from PyPDF2 import PdfFileMerger
target_path =  'C:/Users/jg2yXRZ/OneDrive/桌面/规律填色/零时Word'
pdf_lst = [f for f in os.listdir(target_path) if f.endswith('.pdf')]
pdf_lst = [os.path.join(target_path, filename) for filename in pdf_lst]
pdf_lst.sort()
file_merger = PdfFileMerger()
for pdf in pdf_lst:
    print(pdf)
    file_merger.append(pdf)
file_merger.write("C:/Users/jg2yXRZ/OneDrive/桌面/规律填色/(打印合集)规律填色A4竖版2份ABBABB({}份).pdf".format(num))
file_merger.close()
# doc.Close()

# print('----------第5步:删除临时文件夹------------')    
import shutil
shutil.rmtree('C:/Users/jg2yXRZ/OneDrive/桌面/规律填色/零时Word') #递归删除文件夹,即:删除非空文件夹

重点说明:

输入数据

  运行过程

 随后删除过渡信息

 单元格背景色的确定——米罗可儿12色蜡笔的12种颜色(使用RGB颜色)

 

 随机抽取2次,每次抽9个颜色,合起来一共18个颜色。实际需要16个图案(8+8*2),因此一共是24个图案。前8个在1-4表格内,后8个在4-8表格内

 制作ABB样式的列表

  坐标XY

重点:如何单元格填充背景色

效果展示:

4张A4纸=8份作业 

颜色样式ABB,同一页的6行图案AB颜色都不同

  预设玩法:

1、ABBABB添色——单元格框线的粗细提示幼儿三个颜色是一组的。

2、有黏贴边——纸条剪下来,黏贴成手镯、长条纸等

3、自由涂色——女孩更喜欢涂各种颜色(彩虹系列)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/42334.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

1_SpringMVC_概述,2_SpringMVC_项目搭建

M model 模型层 DAO封装 >>> Mybatis V view 视图层 html css js jsp C controller 控制层 Servlet封装 >>> springMVC SpringMVC是spring为展现层提供的基于MVC设计理念的优秀WEB框架,是目前最主流的MVC框架之一 …

疫情下如何保持高效项目交付

作者&#xff1a;饶炯 疫情以来&#xff0c;我们工作和生活的正常秩序不时受到影响&#xff0c;项目开发过程中不时出现项目成员被封闭或开发现场封锁的情况&#xff0c;很多项目不得不临时选择远程开发模式&#xff0c;项目沟通和协作中出现了各种新的问题和困难&#xff0c;严…

[附源码]计算机毕业设计springboot4S店汽车售后服务管理系统

项目运行 环境配置&#xff1a; Jdk1.8 Tomcat7.0 Mysql HBuilderX&#xff08;Webstorm也行&#xff09; Eclispe&#xff08;IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持&#xff09;。 项目技术&#xff1a; SSM mybatis Maven Vue 等等组成&#xff0c;B/S模式 M…

Python库的使用

文章目录库的使用标准库认识标准库import导入模块使用示例&#xff1a;日期差计算使用示例&#xff1a;字符串操作1&#xff09;翻转单词顺序2&#xff09;旋转字符串3&#xff09;统计是给定字符串前缀的字符串数目第三方库认识第三方库包管理器pip使用示例&#xff1a;生成二…

QFile(文件)

QFile QFile提供一个用于读/写的接口&#xff0c;是一个可以用来读/写二进制文件的Qt资源的I/O设备&#xff0c;QFile可以单独使用&#xff0c;一般配合QTextStream或QDataStream 输入文件路径时最好使用"/"作为分隔符 构造函数&#xff1a; 常用的函数&#xff1a;…

前端甘特图组件开发(二)

自定义时间轴功能 由于常见的甘特图时间轴只支持按照天/周/月/年或者固定的时间单位进行划分&#xff0c;但实际使用场景下有时候会需要按照特定且不规则的时间段对进度数据进行直观划分。因此本组件在原时间轴的基础上添加新的自定义时间轴&#xff0c;可通过数据配置自定义时…

Spring Bean的作用域

1.写在前面 前面的博客我们已经介绍完Spring的依赖的查找来源&#xff0c;依赖注入的来源等等相关知识&#xff0c;今天我们继续来介绍Spring的Bean的作用域。 2.Spring Bean作用域 作用域 3.“singleton” Bean作用域 配置 4.“prototype” Bean作用域 配置 注意事项 Sp…

[Redis]-持久化方式

[Redis]-持久化方式 森格 | 2022年11月 本文是在学习Redis中&#xff0c;对Redis持久化的个人总结。 一、 持久化与Redis 1.1 什么是持久化 持久化是一种将程序数据在瞬时状态和持久状态间的转换机制&#xff0c;也就是把数据保存到可永久保存的存储设备中去。 1.2 Redis的持…

【Hack The Box】linux练习-- Writer

HTB 学习笔记 【Hack The Box】linux练习-- Writer &#x1f525;系列专栏&#xff1a;Hack The Box &#x1f389;欢迎关注&#x1f50e;点赞&#x1f44d;收藏⭐️留言&#x1f4dd; &#x1f4c6;首发时间&#xff1a;&#x1f334;2022年11月27日&#x1f334; &#x1f3…

《web课程设计》使用HTML+CSS制作大学生校园二手交易网站

&#x1f389;精彩专栏推荐 &#x1f4ad;文末获取联系 ✍️ 作者简介: 一个热爱把逻辑思维转变为代码的技术博主 &#x1f482; 作者主页: 【主页——&#x1f680;获取更多优质源码】 &#x1f393; web前端期末大作业&#xff1a; 【&#x1f4da;毕设项目精品实战案例 (10…

阿里P8现身说法,解密“架构”原理与实战笔记:从分布式到微服务

分布式架构与微服务平台是当今IT界的关键技术&#xff0c;也是资深软件工程师和系统架构师必须掌握的核心技术。 微服务、云原生、Kubernetes、Service Mesh是分布式领域的热点技术&#xff0c;它们并不是凭空出现的&#xff0c;一定继承了某些“前辈”的优点。我们不仅要了解…

十万部冷知识:足球踢进了观众席,观众能把球拿走吗?

在看足球比赛的时候&#xff0c;我们经常会看到球员一脚射门踢偏了&#xff0c;球被打飞的情况&#xff0c;这时候球可就奔着观众席去了。就是因为考虑到有这种情况的发生&#xff0c;在比赛之前&#xff0c;比赛组织者&#xff0c;都会提前准备很多的备用球&#xff0c;当球被…

R11.8-11.8-11.8-11.8-BABSL

R11.8-11.8-11.8-11.8-BABSL R11.8-11.8-11.8-11.8-BABSL哈威柱塞泵宁波秉圣&#xff0c;主要特点是高自吸转速&#xff0c;工作效率高&#xff0c;结构紧凑&#xff0c;工作压力高等。广泛用于压力机器具&#xff0c;测试和实验室设施&#xff0c;润滑装置等设备&#xff0c;在…

Home Assistant添加ESPHome设备(IO控制继电器)

文章目录1.在加载项商店中安装ESPHome2.添加设备2.1 编译并下载.bin到电脑2.2 下载固件到ESP82662.3 在Home Assistant添加并配置设备2.4 在设备与服务中配置3.再添加一个设备1.在加载项商店中安装ESPHome 点击配置-加载项 点击加载项商店 搜索ESPHome 2.添加设备 这里…

为什么我在公司里访问不了家里的电脑?

本文为掘金社区首发签约文章&#xff0c;14天内禁止转载&#xff0c;14天后未获授权禁止转载&#xff0c;侵权必究&#xff01; 上篇文章「为什么我们家里的IP都是192.168开头的&#xff1f;」提到&#xff0c;因为IPv4地址有限&#xff0c;最大42亿个。为了更好的利用这有限的…

前端学习一、准备工作

一、电脑 首先想学习前端肯定是需要一台电脑&#xff0c;配置方面目前市面上3千左右的电脑就差不多了&#xff0c;如果有能力的话肯定是越高越好&#xff0c;如何挑选笔记本可自行搜索&#xff0c;我在这方面不专业就不讲了。 二、安装软件 谷歌浏览器 如果无法访问谷歌浏览…

你知道MySQL是如何解决幻读的吗?

前言 SQL标准中定义了4种隔离级别&#xff0c;分别是读未提交、读已提交、可重复读以及序列化。不同的隔离级别下&#xff0c;可以解决不同的并发问题&#xff0c;如下图所示。当然MySQL也基本遵循了这个标准&#xff0c;但是在实现上稍有不同。 本文重点探讨下MySQL是如何解…

MySQL线程池

概述 池化技术&#xff0c;包括线程池、连接池、内存池、对象池等。作用就是提前保存大量的资源&#xff0c;或将用过的资源保存起来&#xff0c;等下一次需要使用该资源时再取出来重复使用。 线程池&#xff1a;通过预先创建一定数量的线程&#xff0c;当有请求达到时&#…

黑苹果之技嘉(GIGABYTE)主板BIOS设置篇

很多童鞋安装黑苹果的时候会卡住&#xff0c;大部分原因是cfg lock 没有关闭&#xff0c;以及USB端口或SATA模式设置错误。 为了避免这些安装阶段报错的情况发生&#xff0c;今天给大家分享一下超详细的BIOS防踩坑设置指南--技嘉&#xff08;GIGABYTE&#xff09;主板BIOS篇&am…

OpenGL官方文档中的入门教程源代码:在3维空间中自由移动

OpenGL官方文档中的入门教程源代码&#xff1a;在3维空间中自由移动项目总览&#xff1a;一、开发前的准备工作1.将以上链接中的三个文件分别放到自己硬盘的一个文件夹中&#xff1a;例如D盘/OpenGL/...2.打开VS2022创建一个项目&#xff0c;右击窗体选择属性3.配置这3个文件的…