站长工具主站
站长之家产品
登录/注册
万能编程助手
为你提供编程问题的代码及解释
我同意
服务条款
开始生成
使用案例
用Python编写一个程序解析PDF文件,并解析出PDF列表,输出到csv文件中
import PyPDF2 import csv def parse_pdf_to_csv(pdf_file, csv_file): pdf_data = [] with open(pdf_file, 'rb') as file: pdf_reader = PyPDF2.PdfFileReader(file) num_pages = pdf_reader.numPages for page_num in range(num_pages): page = pdf_reader.getPage(page_num) pdf_text = page.extractText().strip() pdf_data.append(pdf_text) with open(csv_file, 'w', newline='', encoding='utf-8') as file: csv_writer = csv.writer(file) csv_writer.writerow(['Page Number', 'PDF Content']) for page_num, pdf_text in enumerate(pdf_data, start=1): csv_writer.writerow([page_num, pdf_text]) if __name__ == '__main__': pdf_file = 'path/to/your/pdf/file.pdf' # 替换为您的PDF文件的路径 csv_file = 'output.csv' # 替换为输出CSV文件的路径 parse_pdf_to_csv(pdf_file, csv_file)
写一个冒泡排序算法的demo
def bubble_sort(arr): n = len(arr) for i in range(n): # 提前退出标志,如果某轮没有进行过交换,则表示列表已经有序,可以提前结束排序。 swapped = False # 从第一个元素开始,比较相邻的元素并交换 for j in range(0, n-i-1): if arr[j] > arr[j+1]: # 交换元素 arr[j], arr[j+1] = arr[j+1], arr[j] # 设置交换标志为True swapped = True # 如果本轮没有进行过交换,说明列表已经有序,直接退出循环 if not swapped: break # 示例 if __name__ == "__main__": # 待排序的列表 unsorted_list = [64, 34, 25, 12, 22, 11, 90] print("待排序列表:", unsorted_list) # 调用冒泡排序算法 bubble_sort(unsorted_list) # 打印排序后的列表 print("排序后列表:", unsorted_list)
常见问题
客服
反馈
预览