10 分钟干完 2 小时的活,用 Python 自动化办公有多爽?

海康威视工业相机SDK二次开发实战:多相机同步采集与图像存储 本文详细介绍了海康威视工业相机SDK二次开发实战,包括多相机同步采集与图像存储的优化方案。通过MVS软件搭建开发环境,实现硬件与软件触发同步采集,并提供高效的图像存储管理技巧,帮助开发者提升工业视觉项目的效率与稳定性。 阅读详情

模块的介绍和安装

Python专栏中有对所有可以操作Excel的模块进行了对比分析,感兴趣的同学可以前去围观。

推荐阅读:Python杀死Excel?众多模块哪家强

openpyxl模块是一个可以读取和写入Excel文件的模块,可以处理Excel数据、公式、样式,在表格里面插入图表等;需要单独安装不包含在python标准库里;

安装:pip install openpyxl -i https://pypi.tuna.tsinghua.edu.cn/simple

在windows系统下使用此条指令进行第三方库的安装省时间,Mac端直接使用pip3 install 模块名

具体openpyxl的官方文档可以参照https://openpyxl.readthedocs.io/en/stable/

Excel表格术语

列:column,以字母表示,在表格的上方

行:row,以数字表示,但是注意这里是从1开始,在表格的左侧

表单:sheet,在表格的下部

读数据

打开Excel表格并获取表格名称

下面读取表格的整体思路就是:

  1. 读取一个表格
  2. 获取里面的某个sheet
  3. 获取sheet中单元格、某行、某列的数据
  4. 获取指定范围的行列数据
  5. 案例:查找有空值的单元格

load_workbook(filename = 表格文件路径);workbook.sheetnames 获取表格文件内的sheet名称

注意:只能打开存在的表格,不能用该方法创建一个新表格文件

我们通过读取丝芙兰的售卖商品来学习Excel操作,内容如下:

from openpyxl import load_workbook

workbook = load_workbook(filename= 'cosmetics.xlsx')
print(workbook.sheetnames)

可以看到有:

 ['cosmetics', 'Sheet1', 'Sheet2']

那么我们就可以通过sheetname获取表格,但是如果Excel中只有一个sheet,那么可以直接使用.active

sheet = workbook['cosmetics']  # 返回的是workbook对象:<Worksheet "cosmetics">

但是我们的workbook是有多个sheet的,active的使用如下:

sheet = workbook.active

获得Excel里面的sheet之后就可以对表格的数据进行操作。比如:获取表格的尺寸大小;第一行第一列的数据,代码如下:

print(sheet.dimensions)  # 获取的表格的范围:A1:K1473
cell = sheet['B1']
print(cell.value) # 获取B1表格的数据,结果:Brand

获取某一行或者某一列的内容

col_content = sheet['B']  # 表示获取B这一列
row_content = sheet[3]  #获取第3行数据
print(row_content)

注意返回的Cell单元格对象

(<Cell 'cosmetics'.A3>, <Cell 'cosmetics'.B3>, <Cell 'cosmetics'.C3>, <Cell 'cosmetics'.D3>, <Cell 'cosmetics'.E3>, <Cell 'cosmetics'.F3>, <Cell 'cosmetics'.G3>, <Cell 'cosmetics'.H3>, <Cell 'cosmetics'.I3>, <Cell 'cosmetics'.J3>, <Cell 'cosmetics'.K3>)

如果想获取每个里面的值,可以结合value属性

# 接上代码
for row in row_content:
    print(row.value)

获取多行或者多列内容

.iter_rows(min_row = 最低行数,max_row = 最高行数,min_col = 最低列数,max_col = 最高列数) 按行获取

.iter_cols(min_row = 最低行数,max_row = 最高行数,min_col = 最低列数,max_col = 最高列数) 按列获取

注意:这两个演示任一个都可以,两个案例的区别就是第一个是每次获取一行内容,第二个是按照列获取内容。

每次获取一行数据

for row in sheet.iter_rows(min_row=2, max_row=5, min_col= 1,max_col=4):  # 涵盖范围的所有单元格都会显示
    # print(row) # 每行的内容是一个元组的内容,如果想看到数据还需要继续遍历
    for cell in row:
        print(cell.value)
    print('-'*50)

结果:

这个获取的内容有点类似使用pandas的loc获取第几行几列的情况。

同样列的获取也是一样道理,就是每次获取一列数据

for col in sheet.iter_cols(min_row=2, max_row=5, min_col= 1,max_col=4):
    print(col)
    for cell in row:
     print(cell.value)
    print('-'*50)

结果:

如果有需要获取表格的行或者列可以使用,sheet.rows或者sheet.columns

案例:

编写一个python程序,要求:

(1)打开文件丝芙兰化妆品表格cosmetics.xlsx

(2)找到其中空的单元格

(3)输出这些空单元格的坐标(如A1,B5,C6)

from openpyxl import load_workbook

# 1. 加载cosmetics.xlsx表格
workbook = load_workbook(filename= 'cosmetics.xlsx')
# 2. 得到cosmetics工作簿
sheet = workbook['cosmetics']
# 3. 获取工作簿的范围并切割 范围:'A1:K1473' ---->使用字符串的split分隔得到:['A1','K1473']
size_ls=sheet.dimensions.split(':')
# 4. 从而可以得到行和列的最大和最小值
col_min,row_min,col_max,row_max = size_ls[0][0],size_ls[0][1],size_ls[1][0],size_ls[1][1:]
# print(col_min,row_min,col_max,row_max)  # 打印结果是:A,1,K,1473   即最小列是A,最大列是K,最小行是1,最大行是1473

# 5. 声明一个空的列表存放有空值的单元格坐标
none_list = []
# 6. 遍历行和列
# 遍历列,但是需要注意的是列是字母,所以要使用ord将字母转成数字才可以使用range范围
for col in range(ord(col_min),ord(col_max)+1):  
    # 7. 遍历行,将字符串的行转成整型
    for row in range(int(row_min), int(row_max)+1):
      # 8. 通过chr(col)+str(row)获取单元格坐标,再通过chr将数字转成字母比如65就是A,所以chr(col)+str(row)的结果类似是:A3
        if sheet[chr(col)+str(row)].value == None:
          # 9. 如果某个单元格没有值则将单元格坐标保存到列表:none_list中
            none_list.append(chr(col)+str(row))
# 10. 打印查看none_list里面的内容
for i in none_list:
    print(i)

综合对比openpyxl在读取获取数据上没有pandas有优势,但是pandas不能修改表格,但是openpyxl是可以的。

写数据

向某个格子写入数据并保存

sheet[‘A1’] = ‘你好啊’

用Python列表插入行数据

sheet.append(Python列表) 插入的数据会接在表格内已有数据后面

复制一个sheet

workbook.copy_worksheet(sheet实例)

案例:

from openpyxl import Workbook
from openpyxl.utils import get_column_letter

wb = Workbook()

dest_filename = 'workbook.xlsx'

# 激活默认工作薄
ws1 = wb.active
# 设置工作簿
ws1.title = "numbers"
# 向指定单元格写入内容
ws1['C5'] = 3.14
ws1['A2'] = 1.5

# 创建第二个工作薄,名字为
ws2 = wb.create_sheet(title="score")
data = [
    ['张三',100],
    ['李四',98],
    ['王五',83],
    ['赵六',99],
]
for row in data:
 ws2.append(row)

# 复制一个sheet
wb.copy_worksheet(ws2)

# 最后将内容保存
wb.save(filename = dest_filename)

使用Excel公式

workbook = load_workbook(filename= 'workbook.xlsx')
sheet = workbook['score']
sheet['B5'] = '=AVERAGE(B1:B4)'
sheet['B6'] = '=SUM(B1:B4)'
workbook.save(filename='workbook.xlsx')

如果你对Excel足够熟悉也可以使用过复杂的公式:

workbook = load_workbook(filename= 'workbook.xlsx')
sheet = workbook['Sheet1']
sheet['D1'] = '标准身高'

# Excel中的公式:  =IF(RIGHT(C2,2)="cm",C2,SUBSTITUTE(C2,"m","")*100&"cm")
for i in range(2,9):
    sheet['D{}'.format(i)] = f'=IF(RIGHT(C{i},2)="cm",C{i},SUBSTITUTE(C{i},"m","")*100&"cm")'
workbook.save(filename='workbook.xlsx')

结果:

可以使用的公式是(可以通过下列代码获取):

from openpyxl.utils import FORMULAE print(FORMULAE)

比如说有SUM

添加筛选

sheet.auto_filter.ref:给表格添加“筛选器”

.auto_filter.ref = sheet.dimension 给所有字段添加筛选器;

.auto_filter.ref = "A1" 给A1这个格子添加“筛选器”,就是给第一列添加“筛选器”;

冻结窗格

sheet.freeze_panes = ‘G2’

冻结的结果是,在这个窗格的左上都是不动的,当移动滑块时,变化的只有窗格的右下方数据。也就是当运行此程序代码后,Excel表格里面会在G2窗格(左上方)处出现’十字’坐标线,在第二象限的数据没有办法移动,改变的只有其它象限的数据

from openpyxl import load_workbook

# 1. 加载cosmetics.xlsx表格
workbook = load_workbook(filename= 'cosmetics.xlsx')
# 2. 得到cosmetics工作簿
sheet = workbook['cosmetics']
# 3. 设置筛选器
sheet.auto_filter.ref = 'A1'
# 4. 冻结C100窗口
sheet.freeze_panes ='C100'
# 5. 保存设置
workbook.save(filename = 'cosmetics.xlsx')

当然如果不需要也可以删除行、列、表,分别使用:

.remove("sheet名"):删除某个sheet表;

.delete_rows(idx = 数字编号,amount = 要插入的列数) 删除行, 从idx这一列开始,包括idx这一列

.delete_cols(idx = 数字编号,amount = 要插入的列数) 删除列, 从idx这一行开始,包括idx这一行

也可以添加空行

插入多行空行

.insert_rows(idx = 数字编号,amount = 要插入的列数) 在idx数字编号的行上边插入几行

或者多个空列

.insert_cols(idx = 数字编号,amount = 要插入的列数) 在idx数字编号的列左边插入几列

案例

编写一个Python程序,要求:

(1)打开文件丝芙兰化妆品表格cosmetics.xlsx

(2)找到Price这一列

(3)找到Price中大于100的数据

(4)将这些数据所在行复制到一个新的Excel文件中

from openpyxl import Workbook
from openpyxl import load_workbook

workbook = load_workbook(filename = 'cosmetics.xlsx')
sheet = workbook.active
workbook_1 = Workbook()
sheet_1 = workbook_1.active


cells = sheet['D']
data_list = []
for cell in cells:
    if isinstance(cell.value,int) and cell.value >100:
        data_list.append(cell.row)
print('输出满足条件的数据所在行数的列表:\n{}\n'.format(data_list))


j = 1
for row in data_list:
    for col in range(ord('A'),ord('G')+1):
        sheet_1[chr(col)+str(j)] = sheet[chr(col)+str(row)].value
    print('正在写入第{}行数据'.format(j),end = ' ')
    j += 1
workbook_1.save('cosmetics_other.xlsx')

样式

修改字体样式

Font(name=字体名称,size=字体大小, bold=是否加粗,italic=是否斜体,color=字体颜色)

获取表格中字体的样式

cell.font.属性

设置对齐样式

Alignment(horizontal=水平对齐模式,vertical=垂直对齐模式,text_rotation=旋转角度,wrap_text=是否自动换行)

设置边框样式

Side(style=边线样式,color=边线颜色) Border(left=左边线样式,right=右边线样式,top=上边线样式,bottom=下边线样式)

填充

PatternFill(fill_type=填充样式, fgColor=填充颜色) GradientFill(stop=(渐变颜色1,渐变颜色2,…))

设置行高和列宽

.row_dimensions[行编号].height = 行高 .column_dimensions[列编号].width = 列宽

合并单元格

.merge_cells(待合并的格子编号) .merge_cells(start_row=起始行号,start_column=起始列号,end_row=结束行号,end_column=结束列号)

取消合并单元格

.unmerge_cells(待合并的格子编号) .unmerge_cells(start_row=起始行号,start_column=起始列号,end_row=结束行号,end_column=结束列号)

案例综合应用

编写一个python程序,要求

(1)打开文件丝芙兰化妆品表格cosmetics.xlsx

(2)找到Rank在4.5年以上的,Price价格大于100的数据

(3)将其他数据删除,最后不要在中间留空行

(4)将price数据背景标为红色,字体标为白色

(5)保存该Excel文件

import os
from openpyxl import Workbook
from openpyxl import load_workbook
from openpyxl.styles import Font
from openpyxl.styles import PatternFill

workbook = load_workbook(filename = 'cosmetics.xlsx')
sheet = workbook.active
workbook_1 = Workbook()
sheet_1 = workbook_1.active

def return_col_or_row(content):
  '''函数功能:根据输入的content,
  筛选出窗格中含有这个content的所有的col(列)和row(行)
  返回两个的列表,第一个是所在列的数据,第二个是所在行的数据
  '''
  data_size = sheet.dimensions
  size_ls = data_size.split(":")
  col_min,row_min,col_max,row_max = size_ls[0][0],size_ls[0][1],size_ls[1][0],size_ls[1][1:]
  row_ls = []
  col_ls = []
  for col in range(ord(col_min),ord(col_max)+1):
      for row in range(int(row_min), int(row_max)+1):
          if sheet[chr(col)+str(row)].value == content:
              col_content = chr(col)
              row_content = str(row)
              col_ls.append(col_content)
              row_ls.append(row_content)
  return(col_ls,row_ls)


col_by_Rank = return_col_or_row('Rank')[0][0]
col_Price = return_col_or_row('Price')[0][0]
data_col_by_Rank = sheet[col_by_Rank]
data_col_Price = sheet[col_Price]


data_finial_row = []
for i in range(len(data_col_by_Rank)):
 if data_col_by_Rank[i].value=='Rank':
  continue
 if data_col_Price[i].value=='Price':
  continue
 if isinstance(float(data_col_by_Rank[i].value), float) and float(data_col_by_Rank[i].value) >4.5 and isinstance(float(data_col_Price[i].value), float) and float(data_col_Price[i].value)>100:
  print('Rank的数值为{},对应的价格是{}'.format(data_col_by_Rank[i].value,data_col_Price[i].value))
  data_finial_row.append(data_col_by_Rank[i].row)
print('\n筛选后满足要求的数据行列表输出为:{}\n'.format(data_finial_row))


data_finial_row.insert(0,1)

#这一步的目的是将原来文件的标签写到新文件中去
j = 1
for row in data_finial_row:
 for col in range(ord('A'),ord('K')+1):
    #print(sheet[chr(col)+str(row)].value)
  sheet_1[chr(col)+str(j)] = sheet[chr(col)+str(row)].value
 print('正在写入第{}行数据'.format(j),end = ' ')
 j += 1
print('\n\n数据已全部导入新Excel文件!下面给数据做标记......\n')


data_after_Price = sheet_1[return_col_or_row('Price')[0][0]]
for cell in data_after_Price:
    cell.fill = PatternFill(fill_type='solid',fgColor='FF0000')
    cell.font = Font(color='FFFFFF')
print('数据标记完成')
workbook_1.save(filename='筛选数据后的表格.xlsx')
print('\ncompleted!') 

结果:

绘制图形

from openpyxl import Workbook
from openpyxl.chart import BarChart, Series, Reference,BarChart3D

    
wb = Workbook()
ws = wb.active
    
rows = [
        (None, 2020, 2021),
        ("Apples", 6, 9),
        ("Oranges", 5, 2),
        ("Pears", 8, 3)
]
    
for row in rows:
    ws.append(row)
    
data = Reference(ws, min_col=2, min_row=1, max_col=3, max_row=4)
titles = Reference(ws, min_col=1, min_row=2, max_row=4)
chart = BarChart3D()
chart.title = "3D Bar Chart"
chart.add_data(data=data, titles_from_data=True)
chart.set_categories(titles)

ws.add_chart(chart, "E5")
wb.save("bar3d.xlsx")

或者

from openpyxl import Workbook
from openpyxl.chart import Series, Reference, BubbleChart

wb = Workbook()
ws = wb.active

rows = [
    ("Number of Products", "Sales in USD", "Market share"),
    (14, 12200, 15),
    (20, 60000, 33),
    (18, 24400, 10),
    (22, 32000, 42),
    (),
    (12, 8200, 18),
    (15, 50000, 30),
    (19, 22400, 15),
    (25, 25000, 50),
]

for row in rows:
    ws.append(row)

chart = BubbleChart()
chart.style = 18 # use a preset style

# add the first series of data
xvalues = Reference(ws, min_col=1, min_row=2, max_row=5)
yvalues = Reference(ws, min_col=2, min_row=2, max_row=5)
size = Reference(ws, min_col=3, min_row=2, max_row=5)
series = Series(values=yvalues, xvalues=xvalues, zvalues=size, title="2013")
chart.series.append(series)

# add the second
xvalues = Reference(ws, min_col=1, min_row=7, max_row=10)
yvalues = Reference(ws, min_col=2, min_row=7, max_row=10)
size = Reference(ws, min_col=3, min_row=7, max_row=10)
series = Series(values=yvalues, xvalues=xvalues, zvalues=size, title="2014")
chart.series.append(series)

# place the chart starting in cell E1
ws.add_chart(chart, "E1")
wb.save("bubble.xlsx")

Python经验分享

学好 Python 不论是就业还是做副业赚钱都不错,但要学会 Python 还是要有一个学习规划。最后大家分享一份全套的 Python 学习资料,给那些想学习 Python 的小伙伴们一点帮助!

Python学习路线

这里把Python常用的技术点做了整理,有各个领域的知识点汇总,可以按照上面的知识点找对应的学习资源。
在这里插入图片描述

学习软件

Python常用的开发软件,会给大家节省很多时间。
在这里插入图片描述

学习视频

编程学习一定要多多看视频,书籍和视频结合起来学习才能事半功倍。
在这里插入图片描述

100道练习题

在这里插入图片描述

实战案例

光学理论是没用的,学习编程切忌纸上谈兵,一定要动手实操,将自己学到的知识运用到实际当中。
在这里插入图片描述
最后祝大家天天进步!!

上面这份完整版的Python全套学习资料已经上传至优快云官方,朋友如果需要可以直接微信扫描下方优快云官方认证二维码免费领取【保证100%免费】。

 

SRAM compiler中 Number of banks 设置 的值时,需要考虑应用的性能需求、功耗要求和面积限制。设计者应根据具体的应用场景选择合适的bank数量,以优化整体系统性能。bank是一种用于分离存储器访问的设计结构,允许同时对不同的存储区域进行读写操作,从而提高存储器的并发访问性能。选项用于指定 SRAM 存储器的 并发存储区域。在 SRAM 编译器中, 阅读详情

相关推荐

【验证技能树】UVM 源码解读01 -- UVM本质上就是软件工程方法论在芯片验证领域的应用

文章摘要: UVM(通用验证方法学)是基于SystemVerilog的芯片验证框架,采用组件化、面向对象和事务级抽象设计。其核心在于职责分离与数据流,通过Driver、Monitor、Sequencer等模块协作实现高效验证。UVM强调复用性、可扩展性和可维护性,类似软件工程的模块化与低耦合原则。理解其体系结构比记忆API更重要,有助于灵活组合组件并提升验证效率。UVM不仅是工具,更融合了软件工程思维,推动验证工作向自动化、系统化发展。掌握UVM底层逻辑能优化验证环境设计,适用于从IP到SoC的多层级验证场

qq_45869788的博客 1039

同事8个小时的工作、我10分钟完成,懂Python自动化办公到底有多厉害

很多人一看到python,想到的都是IT行业的一门热门应用。然而在非IT类行业中,python同样是受到热捧,因为每天重复琐碎的工作,是每个人或多或少都会遇到的。我们每天都会在 Word,Excel,PPT,邮件,微信里耗费大量的时间!只需要掌握一点点Python就可以用程序去处理这些重复烦人的工作,比如用python自动化办公,就可以快速整理数据、收集信息!所以,python自动办公到底应该怎么用,看完我的回答就明白了。我想介绍一下我是如何从每天工作8小时,进化成每天工作10分钟的。不涉及太多的技术细节,

隔壁王叔的博客 432

RK3568/RK3588之修改8250驱动实现RS485收发的自动切换

在串口发送前,若为485,则将控制引脚拉为发送状态,在发送后,循环查看是否发送完成,若发送完成则将引脚置回读状态,如此一来,就能实现在内核测控制方向切换,而不会因为延时造成数据丢失,经过测试此办法可行。全部修改完成后,重新编译生成内核文件和设备树文件,烧写到板子上即可。

哒宰的博客 3109

用Python自动化办公能有多爽?10分钟直接干完2天的活

为了帮助大家更好的学习Python,小编给大家准备了一份Python学习资料,里面的内容都是适合零基础小白的笔记和资料,不懂编程也能听懂、看懂,需要获取方式:扫描下方即可获取。

DEVELOPERAA的博客 218

FPGA控制DDR读写(AXI4总线接口)

FPGA控制DDR读写

qq_42712308的博客 1万+

OpenBmc开发11:添加传感器(I2C)

1 查看传感器信息 通过qemu以本地端口映射方式运行编译后的镜像,访问bmcweb页面的网址是:https://localhost:2443/,如果想用IP地址启动请参考:openbmc开发4:启动运行编译镜像。(这里以网桥方式启动,以ip地址方式访问BMC) 输入用户名和密码,密码是:0penBmc(第一个是数字)。 选择Health,然后点击Sensor,可以看到传感器信息。 2 查看传感器配置文件 进入meta-live/meta-test/recipes-phosphor/...

master 1万+

10分钟干完2小时的活,用Python自动化办公能有多爽?

下班晚,加班久感觉已经成为现在的打工人的通病了,有的情况可能是公司不做人,给的工作量太大了,但有的情况下是不是你自己的工作效率低呢? 每次处理一些机械,重复,任务量大的工作时,我就会写一些代码来进行自动化办公,轻轻松松完成一大堆的工作,这里也强烈推荐大家去学,不用学得很深入,掌握一些基础技能就差不多够用了,真的建议大家抽空去学一下。 回想一下,你是不是也有遇到过这样一些工作场景 一次性处理很多表格的时候,需要把一堆的 Excel 文件的内容进行手动拆分和合并; 你需要在网上下载大量的新闻和图片,然后手动把

m0_59164520的博客 1万+

FortiClient EMS实战:从安装到配置的全流程优化指南

本文详细解析了FortiClient EMS 7.0版本的部署与优化全流程,帮助企业构建零信任终端安全体系。从环境规划、高效安装、终端纳管到高级运维,提供实战指南和优化技巧,特别适用于Windows Server环境,助力企业提升终端安全管理效率。

weixin_29325007的博客 546

用 Python 自动化办公有多爽10 分钟能干完 2 小时的活

996 一直是互联网老生常谈的话题了,但抛开其他只谈工作本身, 你有没有想过,下班晚、加班,可能是因为自己工作比较低效?回想一下,是不是自己也曾遇到过这样的低效工作场景: 我将通过下面的例子教大家如何利用Python提高工作效率:

weixin_72959097的博客 383

经典算法之——解决全排列问题以及详解

回溯”指的是“状态重置”,可以理解为“恢复现场”,是在编码的过程中,是为了节约空间而使用的,而在递归或者深度优先中根据需要的场合来配合回溯法可以进一步对自己的代码进行优化。, n-1, n},方向都为向左。邻位对换法是全排列生成算法中的其中一种,它的换位是双向的,通过保存数字的“方向性”来快速得到下一个排列。最后以 3 开头的全排列为[3, 1, 2], [3, 2, 1];以 1 开头的全排列为[1, 2, 3], [1, 3, 2];以 2 开头的全排列为[2, 1, 3], [2, 3, 1];

m0_68987535的博客 8794

Dev-C++使用技巧2(亲测)(更改字体和颜色、自动保存、快捷键选项、一键排版)

更改字体和颜色 顶部菜单栏->工具->编辑器选项。 更改字体 当前选项卡->显示,字体word有的基本都有,华文楷体、宋体,幼圆之类。西文字体默认字体Consloas就不错,中文的话幼圆、新宋体都挺不错。 幼圆效果: 新宋体效果: 更改颜色 当前选项卡->语法,分别单击图中的部分,然后在左边修改前景颜色就可以了。需要直接显示的修改前景颜色,背景颜色设为白色;需要选中显示的修改背景颜色,前景设为白色。 自动保存 我们有时候忘记保存或者电脑突然关机,可能会丢失代码。

魔神之云的博客 2万+

10分钟干完2小时的活,用Python自动化办公能有多爽?,2024年最新总结一下

在处理批量文件操作的时候Python就有着得天独厚的优势,把成千上万的文件修改完毕有时候就只需要几秒的时间,os就是python用来文件操作的库,可以直接在电脑上实现对文件的批量处理,一些关键性的操作也是大家需要学习的,给大家列在下面了。总的来说,Python是很值得学习的,我也不会说大家往哪个方向学是最好的,各取所长选择自己最用得上的技能去学习就好,只要你能选择踏出正确的一步,胜利的曙光已经照向你了。归根结底,我们的最终目的都是为了就业,所以这份结合了多位朋友的亲身经验打磨的面试题合集你绝对不能错过!

2401_83944560的博客 1155

UNet改进(24):注意力机制-从基础原理到高级融合策略

本文系统探讨了如何通过引入各类注意力机制增强UNet在医学图像分割中的性能。文章分为基础篇、进阶篇和高级篇三个层级:基础篇介绍了时序注意力、可变形注意力、分层注意力等8种基础机制;进阶篇提出了5种混合注意力设计;高级篇则探讨了全局+局部+多尺度等复杂组合机制。实验表明,这些注意力模块在心脏MRI、肺部感染等任务中能提升2-15%的分割精度。文章还提供了硬件适配建议和完整实现代码,为研究者提供了全面的技术参考。未来方向包括NAS优化、量子注意力等前沿探索,为UNet在医疗影像等领域的应用革新提供了理论指导。

2501_91516851的博客 763

10分钟干完2小时的活,用Python自动化办公能有多爽?(1)

下班晚,加班久感觉已经成为现在的打工人的通病了,有的情况可能是公司不做人,给的工作量太大了,但有的情况下是不是你自己的工作效率低呢?加最晚的班,秃最早的头是你吗?每次处理一些机械,重复,任务量大的工作时,我就会写一些代码来进行自动化办公,轻轻松松完成一大堆的工作,这里也强烈推荐大家去学,不用学得很深入,掌握一些基础技能就差不多够用了,真的建议大家抽空去学一下。回想一下,你是不是也有遇到过这样一些工作场景一次性处理很多表格的时候,需要把一堆的 Excel 文件的内容进行手动拆分和合并;

2401_86640591的博客 807

NTscan扫描工具

ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

10 分钟干完 2 小时的活,用 Python 自动化办公有多爽

Excel表格每天手动处理三小时,老板催得急却总出错,这活到底能不能甩给电脑?我上周试了Python自动化办公,真不是吹,原来要干两小时的活,现在点一下鼠标十来分钟就完事。

2601_96228417的博客 156

Data-Structures-and-Algorithm-Analysis-in-Java.pdf

作者: Weiss, Mark A. 出版社: Addison Wesley Data Structures and Algorithm Analysis in Java is an “advanced algorithms” book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was known as CS7. This text is for readers who want to learn good programming and algorithm analysis skills simultaneously so that they can develop such programs with the maximum amo...

10 分钟干完 2 小时的活,用 Python 自动化办公有多爽?(1)

学好 Python 不论是就业还是做副业赚钱都不错,但要学会 Python 还是要有一个学习规划。最后大家分享一份全套的 Python 学习资料,给那些想学习 Python 的小伙伴们一点帮助!

m0_56169789的博客 1074

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

上一篇: Python办公自动化|10个方法,是时候对Excel下手了
下一篇: Python办公自动化|自动整理文件,一键完成
壹只小小码农
博客等级 码龄5年 8098粉丝 1334原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值