Kirjoittaja Aihe: [Ratkaistu] Pyxl:in asennus  (Luettu 2690 kertaa)

ilkant

  • Käyttäjä
  • Viestejä: 1380
  • Kubuntu
    • Profiili
[Ratkaistu] Pyxl:in asennus
« : 19.12.21 - klo:01.07 »
Kirjassa Automate the boring stuff with python on kerrottu, kuinka pythonilla voi lukea ja käsitellä Excel-taulukoita ja Google-taulukoita.

Asensin pyxl:n pip:illä. Sitten pip3:lla ja vielä apt:llä (ohjeet täällä). Lopulta ohjelma ei antanut mitään virheilmoituksia.

Mutta kun ohjelmassa on lauseke

Koodia: [Valitse]
wb = openpyxl.load_workbook('koe.ods')

ei vaan tapahdu mitään. Eikä tule virheilmoitusta.

Koodia: [Valitse]
sheet1 = wb['Sheet1']
sheet2 = wb[0]

Eivät toimi myöskään. Ilmeisesti pyxl-asennus ei ole onnistunut oikein.
« Viimeksi muokattu: 07.01.22 - klo:00.06 kirjoittanut ilkant »

kamara

  • Käyttäjä
  • Viestejä: 3031
    • Profiili
Vs: Pyxl:in asennus
« Vastaus #1 : 19.12.21 - klo:09.40 »
Itselläni se toimii suoraan...
... ainakin tällä esimerkillä...
Koodia: [Valitse]
from openpyxl import Workbook
from openpyxl.utils import get_column_letter

wb = Workbook()

dest_filename = 'empty_book.xlsx'

ws1 = wb.active
ws1.title = "range names"

for row in range(1, 40):
    ws1.append(range(600))

ws2 = wb.create_sheet(title="Pi")

ws2['F5'] = 3.14

ws3 = wb.create_sheet(title="Data")
for row in range(10, 20):
    for col in range(27, 54):
        _ = ws3.cell(column=col, row=row, value="{0}".format(get_column_letter(col)))
print(ws3['AA10'].value)
wb.save(filename = dest_filename)

Se siis luo empty_book.xlsx-tiedoston, jonka pystyy avaamaan libreofficessa.

Asensin tällä komennolla kyseisen kirjaston...
Koodia: [Valitse]
sudo pip3 install openpyxl

Edit - Myös tämä testi-ohjelma toimii...
Koodia: [Valitse]
from openpyxl import load_workbook
wb = load_workbook(filename = 'empty_book.xlsx')
sheet_ranges = wb['range names']
print(sheet_ranges['D18'].value)
« Viimeksi muokattu: 19.12.21 - klo:09.47 kirjoittanut kamara »

kamara

  • Käyttäjä
  • Viestejä: 3031
    • Profiili
Vs: Pyxl:in asennus
« Vastaus #2 : 19.12.21 - klo:09.53 »
Mutta kun ohjelmassa on lauseke

Koodia: [Valitse]
wb = openpyxl.load_workbook('koe.ods')

ei vaan tapahdu mitään. Eikä tule virheilmoitusta.

Joo tosiaan sulla taitaa olla väärin asennettuna kyseinen kikkare, kun itselläni tulee kyseisestä käskystä virheilmoitus, jossa kehotetaan käyttää xlsx-tiedostoa ods:n sijaan..

ilkant

  • Käyttäjä
  • Viestejä: 1380
  • Kubuntu
    • Profiili
Vs: Pyxl:in asennus
« Vastaus #3 : 07.01.22 - klo:00.05 »
Ratkesi. Käytän pyCharmia ohjelmointiympäristönä. Se piti asentaa vielä pyCharmissa kyseisessä projektissa, jossa sitä oli importattu. No, aina oppii uutta kun asiat eivät toimi automaattisesti. Joku ehkä ehdottaa, että pyCharmin voi asettaa lukemaan automaattisesti hakemistosta /usr/lib/python3/dist-packages paketteja.