亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

打開 2 個文件并將它們分配給 Python 3 中的 2 個集合

打開 2 個文件并將它們分配給 Python 3 中的 2 個集合

元芳怎么了 2023-04-25 16:32:56
我有一個代碼,它獲取 selenium 信息,我需要將此信息打印到 docx,但要通過模板。在這里,我借助 print() 獲取信息(設置某些部分)史岱文森高中一般信息學校名稱:Stuyvesant 高中校長:Mr. Eric Contreras校長電子郵件:[email protected]類型:普通學校年級跨度:9-12地址:345 Chambers Street, New York, NY 10282我在控制臺中打印此信息,但我需要將此信息打印到 docx。這是代碼的一部分,我在這里打?。篺rom selenium import webdriverfrom selenium.common.exceptions import NoSuchElementExceptionimport openpyxlimport docxfrom docx.shared import PtList = []wb = openpyxl.load_workbook('D:\INSPR\Rating_100_schools\Top-100.xlsx')sheet = wb['RI']tuple(sheet['A1':'A100']) # Get all cells from A1 to A100.for rowOfCellObjects in sheet['A1':'A100']:    for cellObj in rowOfCellObjects:        List.append(cellObj.value)School_list_result = []State = sheet.titledriver = webdriver.Chrome(executable_path='D:\chromedriver') #any pathdef check_xpath(xpath):        try:            element = driver.find_element_by_xpath(xpath)            School_list_result.append(element.text)        except NoSuchElementException:            School_list_result.append("No data.")    def check_text(partial_link_text):        try:            element_text = driver.find_element_by_partial_link_text(partial_link_text)            School_list_result.append(element_text.get_attribute("href"))        except NoSuchElementException:            School_list_result.append("No data.")            def check_click(clicker):        try:            element_click = driver.find_element_by_partial_link_text(clicker)            element_click.click()        except NoSuchElementException:            print("No click.")            我需要的是:不是通過模板將此結果打印到控制臺,而是通過模板打印到 docx。還有一個:如果你知道如何不使用索引(比如:School_list_result[0]),請告訴我。
查看完整描述

2 回答

?
蠱毒傳說

TA貢獻1895條經驗 獲得超3個贊

只需將set()列表包裹起來。


def readfile(fn):

    with open(fn, 'r') as fh:

        return fh.read().splitlines()


diff = set(readfile("file1.txt")).difference(set(readfile("file2.txt")))


查看完整回答
反對 回復 2023-04-25
?
Helenr

TA貢獻1780條經驗 獲得超4個贊

您可以申請set將列表當場轉換為集合。所以這就足夠了:


a_file = open(r'c:\a.csv', 'r')

b_file = open(r'c:\b.csv', 'r')


a_set = set(a_file.readlines())

b_set = set(b_file.readlines())


a_file.close()

b_file.close()


difference_list = a_set.difference(b_set)

但我也建議應用with語句來執行基本的文件操作(打開、關閉等),并確保在幾乎任何異常的情況下它們都將被正確關閉。在這種情況下,代碼將如下所示:


with open(r'c:\a.csv', 'r') as a_file, open(r'c:\b.csv', 'r') as b_file:

    a_set = set(a_file.readlines())

    b_set = set(b_file.readlines())


difference_list = a_set.difference(b_set)


查看完整回答
反對 回復 2023-04-25
  • 2 回答
  • 0 關注
  • 108 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號