2022年10月9日 19:01:29 最近又用到 改了一下
2022.5.5 学python做的第一个小脚本
学python以来第一次做的小脚本 用于把pdf文献的错误格式 文献引用和文前的数字序列去掉
这个怎么上传pyside2的ui文件呀 想一起记录下来来着...
import pyperclip # 实现复制文本到剪贴板
import re
import sys
import numpy
from PySide2.QtUiTools import QUiLoader
from PySide2.QtWidgets import QApplication
class A: # 清除空白行
def b(self, words):
words = re.sub(r'\n', "",words)
return words
def num(self, words):
words = re.sub(r'(\s\d+)\s', "", words)
return words
def eliminate(self, words): # 去除冗余文献索引
list = numpy.arange(1980, 2030, 1) # 年份列表集合
p = re.compile(r'\(.+?\)') # 括号内的内容
for one in p.findall(words): # 检测年份
for num in list:
str(num)
if str(num) in one:
words = words.replace(one, '') # 移除
return words # 返回结果
def together(self,words):
A.num(self,words)
A.eliminate(self,words)
a = A()
class Stats: # 用户输入窗口
def __init__(self):
# 从文件中加载UI定义
# 从 UI 定义中动态 创建一个相应的窗口对象
# 注意:里面的控件对象也成为窗口对象的属性了
# 比如 self.ui.button , self.ui.textEdit
self.ui = QUiLoader().load('turn.ui')
self.ui.pushButton.clicked.connect(self.open_new_window) # 先打开窗口
self.ui.pushButton.clicked.connect(self.handleCalc1) # 换行点击操作
self.ui.pushButton_2.clicked.connect(self.open_new_window)
self.ui.pushButton_2.clicked.connect(self.handleCalc2) # 数字点击操作
self.ui.pushButton_3.clicked.connect(self.open_new_window)
self.ui.pushButton_3.clicked.connect(self.handleCalc3) # 数字点击操作
self.ui.pushButton_4.clicked.connect(self.handleCalc4) # 数字点击操作
def open_new_window(self): # 打开结果窗口
# 实例化另外一个窗口
self.b = B()
# 显示新窗口
self.b.ui.show()
def handleCalc1(self): # 换行 引文
info = self.ui.textEdit.toPlainText()
info = a.b(info)
text = a.eliminate(info) # 调用A类 #返回A类处理换行文本
self.b.ui.textEdit.append(text) # 把处理文本反馈出来
pyperclip.copy(text)
def handleCalc2(self): # 数字清除
info = self.ui.textEdit.toPlainText()
text = a.num(info) # 调用A类 #返回A类处理数字文本
self.b.ui.textEdit.append(text)
pyperclip.copy(text)
def handleCalc3(self): # 同时清除
info = self.ui.textEdit.toPlainText()
info = a.num(info) # 调用A类 #返回A类处理数字文本
info = a.b(info)
text = a.eliminate(info)
self.b.ui.textEdit.append(text)
pyperclip.copy(text)
def handleCalc4(self):#清除
self.ui.textEdit.clear()
class B: #
def __init__(self):
self.ui = QUiLoader().load('main.ui') # 先指定ui
self.ui.buttoncopy.clicked.connect(self.copy) # 复制到剪贴板
def copy(self):
pyperclip.copy(self.ui.textEdit.toPlainText()) # 复制到剪贴板实现 <---把(获取编辑框内的文本内容)
if __name__ == '__main__':
app = QApplication(sys.argv)
stats = Stats()
stats.ui.show()
sys.exit(app.exec_())