iis服务器助手广告广告
返回顶部
首页 > 资讯 > 后端开发 > Python >怎么用python实现复制粘贴功能
  • 795
分享到

怎么用python实现复制粘贴功能

2023-06-08 19:06:12 795人浏览 独家记忆

Python 官方文档:入门教程 => 点击学习

摘要

这篇文章主要介绍“怎么用python实现复制粘贴功能”,在日常操作中,相信很多人在怎么用Python实现复制粘贴功能问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”怎么用python实现复制粘贴功能”的疑惑有所

这篇文章主要介绍“怎么用python实现复制粘贴功能”,在日常操作中,相信很多人在怎么用Python实现复制粘贴功能问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”怎么用python实现复制粘贴功能”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!

楔子

pandas里面有这么一个方法:pd.read_clipboard,可以根据你复制的内容生成DataFrame。是的,就是我们平时选中,然后复制、或者Ctrl+C时拷贝的内容,所以比较神奇,那么pandas到底是怎么做到的,它是怎么读出我们使用Ctrl +C复制的内容呢。

看了一下源码,非常的复杂,方法是使用了ctypes,然后调用了操作系统的一个动态库实现的。ctypes是专门来调用C、c++使用的,但是我们知道Python有一个pywin32模块,对于windows操作系统提供的接口进行了封装。所以下面我们使用pywin32来实现我们平时使用的复制粘贴功能。

首先是安装:pip install pywin32

实现复制

下面我们来看看如何使用这个模块实现复制功能,另外关于pywin32这个模块,它的家族非常的庞大。

怎么用python实现复制粘贴功能

里面有很多的win32xxx.pyd,我们直接调用就行。

# win32clipboard专门用来复制粘贴的import win32clipboard as wcbimport win32con as wc # 打开复制粘贴板wcb.OpenClipboard()# 我们之前可能已经Ctrl+C了,这里是清空目前Ctrl+C复制的内容。但是经过测试,这一步即使没有也无所谓wcb.EmptyClipboard()# 将内容写入复制粘贴板,第一个参数win32con.CF_TEXT不用管,我也不知道它是干什么的# 关键第二个参数,就是我们要复制的内容,一定要传入字节wcb.SetClipboardData(wc.CF_TEXT, "古明地觉世界第一可爱".encode("gbk"))# 关闭复制粘贴板wcb.CloseClipboard()

然后我们 Ctrl+V 粘贴就会得到 "古明地觉世界第一可爱" 这个字符串,再强调一次,这里不能传入字符串、而是要传入字节。如果传入字符串,那么中文会得到乱码、ascii文本只会得到第一个字符。

另外这里要使用 gbk,因为我当前操作系统默认编码使用的是gbk,所以会对我们输入的字节使用 gbk 解码。因此如果使用utf-8编码的话,那么粘贴得到的依旧是乱码。当然具体根据你当前的机器决定。

实现粘贴

复制我们实现了,下面来看看怎么实现粘贴。

# win32clipboard专门用来复制粘贴的import win32clipboard as wcbimport win32con as wc # 打开复制粘贴板wcb.OpenClipboard()# 获取粘贴板内容,既然是获取,那么只需要一个参数即可。# 会返回已经使用Ctrl+C复制得到的内容data = wcb.GetClipboardData(wc.CF_TEXT)# 关闭复制粘贴板wcb.CloseClipboard() # 得到的依旧是字节"""我们在"实现复制"的时候说过,因为Ctrl+V默认使用gbk解码,所以在模拟Ctrl+C的时候我们也要传入使用gbk编码的字符串那么在"实现粘贴"的时候也是一样,我们使用Ctrl+C复制的时候,也会使用gbk编码成字节那么这里模拟Ctrl+V得到字节之后也要使用gbk解码"""# 然后随便Ctrl+C拷贝一段内容,下面就会将拷贝的内容打印出来print(data.decode("gbk"))

我们上面的模块是win32家族,所以它只适用于Windows系统,不适用于linuxMacOS。那么如果我想在Linux和macOS中实现怎么办呢?也很简单,事实上,这两个系统实现起来反而会更简单,因为自带了相关的命令。

macOS实现复制粘贴

import subprocess# 实现拷贝def copy(text):  p = subprocess.Popen(["pbcopy", "w"], stdin=subprocess.PIPE, close_fds=True)  # 将内容(text)拷贝起来  p.communicate(input=text.encode("utf-8"))   # 实现粘贴  def paste():  p = subprocess.Popen(["pbpaste", "r"], stdout=subprocess.PIPE, close_fds=True)  stdout, stderr = p.communicate()  #返回粘贴内容  return stdout.decode("utf-8")

Linux实现复制粘贴

注意:Linux上实现复制粘贴实际上意义不大,因为实现复制粘贴的功能的一个前提是你必须要有显示器。

而公司使用的服务器肯定不会带显示器的,使用的时候都是通过xshell远程连接。但是Linux上也提供了相应的命令,叫xclip,当然这个命令不是自带的,使用的时候可能还要安装:yum install xclip。下面来看看怎么通过 Python 调用,实际上和macOS一样。

import subprocess# 实现拷贝def copy(text):  p = subprocess.Popen(      ["xclip", "-selection", "c"], stdin=subprocess.PIPE, close_fds=True    )  p.communicate(input=text.encode("utf-8"))   # 实现粘贴  def paste():  p = subprocess.Popen(      ["xclip", "-selection", "c", "-o"], stdout=subprocess.PIPE, close_fds=True    )  stdout, stderr = p.communicate()  return stdout.decode("utf-8")

可以看到Linux和macOS还是比较简单的,因为操作系统提供了这个命令,我们可以直接使用。但是Windows则没有提供,所以需要使用ctypes,或者使用封装好的pywin32。

另外还是那句话,Linux上执行需要有显示器,我以我阿里云上的Centos为例。

怎么用python实现复制粘贴功能

提示我们无法打开显示器,因为根本就没有。 当然,感觉这个功能也没多大用,当做兴趣了解一下就行。

到此,关于“怎么用python实现复制粘贴功能”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注编程网网站,小编会继续努力为大家带来更多实用的文章!

--结束END--

本文标题: 怎么用python实现复制粘贴功能

本文链接: https://www.lsjlt.com/news/255122.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • 怎么用python实现复制粘贴功能
    这篇文章主要介绍“怎么用python实现复制粘贴功能”,在日常操作中,相信很多人在怎么用python实现复制粘贴功能问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”怎么用python实现复制粘贴功能”的疑惑有所...
    99+
    2023-06-08
  • 如何用python实现复制粘贴功能
    目录楔子实现复制实现粘贴macOS实现复制粘贴Linux实现复制粘贴楔子 pandas里面有这么一个方法:pd.read_clipboard,可以根据你复制的内容生成DataFra...
    99+
    2024-04-02
  • js 剪切、复制、粘贴功能实现
    针对现代浏览器实现(Navigator.clipboard) Navigator.clipboard API可以用来访问系统剪贴板,可以实现【剪切、复制、粘贴】功能。该 API 被设...
    99+
    2023-05-18
    js 剪切 js复制 js粘贴
  • javaScript如何实现复制粘贴功能
    小编给大家分享一下javaScript如何实现复制粘贴功能,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧! ...
    99+
    2024-04-02
  • vue如何实现粘贴复制功能
    这篇文章主要介绍了vue如何实现粘贴复制功能,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。引言项目中如果实现粘贴复制功能,目前市面上共有三种方法,均有利有弊,大家可以根据自己...
    99+
    2023-06-29
  • 详解如何使用Python实现复制粘贴的功能
    目录楔子Windows 上的复制粘贴macOS 上的复制粘贴Linux 上的复制粘贴pyperclip 实现复制粘贴楔子 pandas 里面有一个 pd...
    99+
    2023-01-03
    Python实现复制粘贴功能 Python复制粘贴 Python复制 Python粘贴
  • jQuery如何实现复制到粘贴板功能
    这篇文章主要为大家展示了“jQuery如何实现复制到粘贴板功能”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“jQuery如何实现复制到粘贴板功能”这篇文章吧。用...
    99+
    2024-04-02
  • JS代码如何实现粘贴板复制功能
    这篇文章将为大家详细讲解有关JS代码如何实现粘贴板复制功能,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。使用剪贴板是一项基本技能。作为码农都应知道, Tab , Ctrl...
    99+
    2024-04-02
  • vue粘贴复制功能的实现过程记录
    目录引言1. 项目需求图展示:1. 安装第三方插件方法(不推荐)2. 浏览器自带Document.execCommand()复制方法(不推荐)3. Clipboard.writeTe...
    99+
    2024-04-02
  • JS怎么实现粘贴板功能
    小编给大家分享一下JS怎么实现粘贴板功能,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!使用剪贴板是一项基本技能。作为码农都应知道...
    99+
    2024-04-02
  • python怎么复制粘贴代码
    python 中复制和粘贴代码有两种方法:使用剪贴板:选择代码,按 ctrl + c 复制,切换位置,按 ctrl + v 粘贴。使用 shell 命令:使用 echo 命令将代码打印到...
    99+
    2024-05-14
    python macos
  • python怎么复制粘贴文件
    在Python中,可以使用shutil模块中的copy函数来复制文件,如下所示:```pythonimport shutilsrc ...
    99+
    2023-08-30
    python
  • Vim如何实现复制粘贴
    这篇文章将为大家详细讲解有关Vim如何实现复制粘贴,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。最近使用Vim来写博客,发现在Vim中粘贴Python代码后,缩进就全乱了。仔细研究了以下,原来是自动缩进的...
    99+
    2023-06-13
  • ubuntu如何实现复制粘贴
    ubuntu实现复制粘贴的方法:在KDE/Gnome下:复制命令:Ctrl + C粘贴命令:Ctrl + V在终端下:复制命令:Ctrl + Shift + C 组合键粘贴命令:Ctrl + Shift + V 组合键在控制台下:复制命令:...
    99+
    2024-04-02
  • vps不能复制粘贴怎么解决
    如果您在 VPS 上无法复制和粘贴,请尝试以下解决方案:1. 使用 ssh 登录:如果您正在使用 SSH 登录到 VPS,可以尝试使用 SSH 客户端的复制和粘贴功能,例如 PuTTY 的复制和粘贴快捷键为 Ctrl + Shift +...
    99+
    2023-08-11
    vps
  • win10电脑复制粘贴不能用怎么办
    如果遇到无法使用复制粘贴功能的情况,会严重妨碍工作效率。有网友最近就遇到了电脑复制粘贴没有反应的问题,一般导致这个问题的原因多种,下面小编就给大家分享下win10不能复制粘贴的解决方法。具体解决方法如下:1、首先打开任务管理器(同时按下 c...
    99+
    2023-07-10
  • ubuntu怎么样复制粘贴
    ubuntu复制粘贴的方法:复制粘贴快捷键有:复制:【Ctrl+Insert】粘贴:【Shitf+Insert】在ubuntu终端下:方法一复制:【ctrl+shift+c】粘贴:【ctrl+shift+v】方法二直接鼠标左键选中要复制的命...
    99+
    2024-04-02
  • Python实现强制复制粘贴的示例详解
    目录前因后果流程思路代码展示效果展示前因后果 公司有人阳了,今天在家上班,突然小姨子就问我有没有baidu文库会员,想下载点东西,我心想这还要会员?用Python不是分分钟的事情! ...
    99+
    2022-12-19
    Python强制复制粘贴 Python 复制粘贴
  • Win7系统不能复制粘贴怎么办
    现在计算机已经成为我们每天使用的工具。然而,使用时间越长,就越容易出现各种计算机问题。无论问题有多小,它都会影响我们使用计算机。一起来解决Win7系统计算机突然无法复制和粘贴的问题吧!。方法一:通过命令提示符解决。按下win+R打开操作,或...
    99+
    2023-07-13
  • 电脑不能复制粘贴怎么解决
    今天小编给大家分享一下电脑不能复制粘贴怎么解决的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。电脑不能复制粘贴解决的方法方法一...
    99+
    2023-07-01
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作