如何利用python在剪贴板上读取/写入数据

目录

读取剪贴板上的数据

先给大家介绍pandas.read_clipboard,从剪贴板读取文本并传递到Read_csv。

pandas.read_clipboard(sep=\'\\\\s+\', **kwargs)

其中参数sep是字段定界符,默认为’\\s+’,也就是说将tab和多个空格都当成一样的分隔符。

接下来执行操作,打开表格→选中数据Ctrl+C复制→再执行以下代码

import pandas as pd
df = pd.read_clipboard() #读取剪切板中的数据
df

看到这篇文章的小伙伴可以复制下面这个表格试试:

uid aoto start end
0 A 1 2
1 A 4 7
2 A 3 6

如下数据时,分隔符这里是“ , ”,加个参数sep=','即可。

aoto,start,end
A,1,2
A,4,7
A,3,6

# 读取剪贴板中的数据
import pandas as pd
df = pd.read_clipboard(sep=\',\') #读取剪切板中的数据
df

另外增加参数header=None来告诉函数,我们读取的剪贴板数据没有列索引,那么导入的就是:

如何利用python在剪贴板上读取/写入数据

将数据写入剪贴板

还是先看官方简介

pandas.DataFrame.to_clipboard(self, excel: bool = True, sep: Union[str, NoneType] = None, **kwargs) -> None

其中参数:

excel :默认为 True以csv格式生成输出,以便轻松粘贴到excel。

1、 True :请使用提供的分隔符进行csv粘贴。

2、 False :将对象的字符串表示形式写入剪贴板。

sep :str,默认'\\t'字段定界符。

\\kwargs这些参数将传递到DataFrame.to_csv

示例如下:

先生成了一个DataFrame数据,再执行df.to_clipboard(),这样就复制到系统剪贴板里,你可以粘贴到任意位置。

import pandas as pd
dic1={\'name\':[\'小花\',\'狗蛋\',\'二狗\',\'小草\'],
      \'age\':[17,20,30,20],
      \'gender\':[\'女\',\'男\',\'男\',\'女\']}
df=pd.DataFrame(dic1)
df

# 复制到剪贴板
pd.DataFrame.to_clipboard(df)

补充:python 剪切板写入文件,产生随机数写入剪切板

# -*- coding: utf-8 -*-
import pyperclip
import random
import time
def random_num():
    \'\'\'
    产生一个6位的随机数(可以是六个0)写入剪切板
    防错.txt里面的内容长度如果超过(2万字符)就清理一半
    \'\'\'
    uu=1        #1代表开启防错机制将剪切板内容写入文件
    u2=r\'D:\\Program Files\\Notepad++\\防错.txt\'  #写在这里
    s=\'\'
    for i in range(6):
        a=random.randrange(10)
        time.sleep(0.013)
        s+=str(a)
    data = pyperclip.paste()
    pyperclip.copy(s)
    if uu ==1:
        f= open(u2,\"r+\",encoding=\'utf-8\',errors=\'ignore\')
        rd=f.read()
        print(len(rd))
        if len(rd)>20000:
            rd=rd[-10000:]+\'\\n\'+data
            f.close()
            time.sleep(0.1)
            f= open(u2,\"w\",encoding=\'utf-8\',errors=\'ignore\')
            f.write(rd)
            time.sleep(0.1)
            f.close()
        else:
            #print(f.tell()) #查看文件指针位置
            f.write(\'\\n\'+data)
            time.sleep(0.013)
            f.close()
 
def main():
    random_num()
 
if __name__==\'__main__\':
    main()

总结

© 版权声明
THE END
喜欢就支持一下吧
点赞0 分享
评论 抢沙发

请登录后发表评论

    暂无评论内容