Knowledgebase

Πίνακες σε Python | Aspose

Σε αυτό το άρθρο θα εργαστούμε με πίνακες σε Python, θα σας δείξουμε τον πιο εύκολο τρόπο για να δημιουργήσετε έναν πίνακα και να διαχειριστείτε τα δεδομένα μέσα στον πίνακα. Χρησιμοποιώντας το API μας, μπορείτε να επεξεργάζεστε πίνακες και να τους εξάγετε σε διαφορετικές μορφές, όπως Word, Excel, PDF κ.λπ.
Θα παρουσιάσουμε το Aspose.Words for Python via .NET και θα εστιάσουμε στη δημιουργία και εισαγωγή πινάκων με αυτό το API.

Πίνακες σε Python

Aspose.Words for Python via .NET είναι μια βιβλιοθήκη κλάσεων σχεδιασμένη για ανάγνωση και επεξεργασία εγγράφων πολλών τύπων, όπως Microsoft Word (DOCX, DOC, ODT), Web (Markdown, HTML), PDF και άλλα. Με αυτό το Python API, μπορείτε να δημιουργείτε, να επεξεργάζεστε, να αποδίδετε και να μετατρέπετε αρχεία Word σε πολλαπλές μορφές, να δημιουργείτε αναφορές και να οπτικοποιείτε τα δεδομένα σας χωρίς την ανάγκη εξωτερικού λογισμικού.
Περισσότερες από 100 κλάσεις Python για διαχείριση επεξεργασίας εγγράφων και λειτουργίες μορφοποίησης δεδομένων είναι στη διάθεσή σας.

Εργασία με πίνακες σε Python

Οι πίνακες επιτρέπουν την οργάνωση μεγάλων ποσοτήτων πληροφοριών και την εμφάνισή τους σε δομή τύπου πλέγματος με σειρές και στήλες. Είναι πολύ χρήσιμοι όταν παρουσιάζονται δεδομένα σε μορφή πινάκων, καθώς προσφέρουν καλύτερο έλεγχο του σχεδιασμού του περιεχομένου.
Οι πίνακες είναι δομημένα σύνολα δεδομένων που αποτελούνται από σειρές και στήλες. Υποστηρίζονται πλήρως στη βιβλιοθήκη μας, και μπορείτε εύκολα να επεξεργάζεστε, να αλλάζετε, να προσθέτετε ή να αφαιρείτε πίνακες.
Παρακάτω θα δείξουμε πώς να δημιουργήσετε έναν νέο πίνακα χρησιμοποιώντας Python, και στην τεκμηρίωσή μας μπορείτε να δείτε πώς να εφαρμόσετε μορφοποίηση , εργαστείτε με TableStyle , εργαστείτε με στήλες και σειρές , και συνδέσετε ή χωρίσετε πίνακες .

Δημιουργία πινάκων σε Python

Η βιβλιοθήκη μας προσφέρει διαφορετικές μεθόδους για τη δημιουργία νέων πινάκων μέσα σε ένα έγγραφο, και σε αυτό το άρθρο θα δούμε πώς να χρησιμοποιήσετε μερικές από αυτές τις μεθόδους.
Ο νεοδημιουργημένος πίνακας έχει τιμές παρόμοιες με τις προεπιλεγμένες τιμές του Microsoft Word.

Ιδιότητα πίνακα Python

Μπορείτε να εισάγετε έναν πίνακα χρησιμοποιώντας την κλάση DocumentBuilder , και τις παρακάτω μεθόδους για την κατασκευή του πίνακα:
DocumentBuilder.start_table
DocumentBuilder.insert_cell
DocumentBuilder.end_row
DocumentBuilder.end_table
DocumentBuilder.writeln

Μέθοδοι δημιουργίας πίνακα Python

Δημιουργήστε έναν πίνακα σε Python ακολουθώντας αυτά τα 7 βήματα:

  1. Ξεκινήστε τον πίνακα με DocumentBuilder.start_table.
  2. Χρησιμοποιήστε DocumentBuilder.insert_cell για να εισάγετε ένα κελί μέσα στον πίνακα και το DocumentBuilder.cell_format για να ορίσετε τη μορφοποίηση του κελιού.
  3. Χρησιμοποιήστε το DocumentBuilder για να εισάγετε το περιεχόμενο του κελιού.
  4. Επαναλάβετε τα βήματα 2 και 3 μέχρι να ολοκληρώσετε τη σειρά.
  5. Μπορείτε να καλέσετε τη μέθοδο DocumentBuilder.end_row για να κλείσετε τη σειρά και να χρησιμοποιήσετε το DocumentBuilder.row_format για μορφοποίηση της σειράς.
  6. Στη συνέχεια, επαναλάβετε τα βήματα 2 έως 5 μέχρι να ολοκληρώσετε τον πίνακα.
  7. Χρησιμοποιήστε τη μέθοδο DocumentBuilder.end_table για να ολοκληρώσετε τον πίνακα.

Περισσότερες λεπτομέρειες σχετικά με την κλάση DocumentBuilder και τις μεθόδους δημιουργίας πινάκων περιγράφονται στην τεκμηρίωσή μας .

Στο παρακάτω παράδειγμα μπορείτε να δείτε πώς να δημιουργήσετε έναν απλό πίνακα με προεπιλεγμένη μορφοποίηση χρησιμοποιώντας το DocumentBuilder.

# For complete examples and data files, please go to https://github.com/aspose-words/Aspose.Words-for-Python-via-.NET
doc = aw.Document()
builder = aw.DocumentBuilder(doc)
    
# Start building the table.
builder.start_table()
builder.insert_cell()
builder.write("Row 1, Cell 1 Content.")
    
# Build the second cell.
builder.insert_cell()
builder.write("Row 1, Cell 2 Content.")
    
# Call the following method to end the row and start a new row.
builder.end_row()

# Build the first cell of the second row.
builder.insert_cell()
builder.write("Row 2, Cell 1 Content")

# Build the second cell.
builder.insert_cell()
builder.write("Row 2, Cell 2 Content.")
builder.end_row()

# Signal that we have finished building the table.
builder.end_table()

doc.save(docs_base.artifacts_dir + "WorkingWithTables.create_simple_table.docx")

Δημιουργήστε έναν μορφοποιημένο πίνακα χρησιμοποιώντας το DocumentBuilder με το παρακάτω παράδειγμα κώδικα.

# For complete examples and data files, please go to https://github.com/aspose-words/Aspose.Words-for-Python-via-.NET
doc = aw.Document()
builder = aw.DocumentBuilder(doc)

table = builder.start_table()
builder.insert_cell()

# Table wide formatting must be applied after at least one row is present in the table.
table.left_indent = 20.0

# Set height and define the height rule for the header row.
builder.row_format.height = 40.0
builder.row_format.height_rule = aw.HeightRule.AT_LEAST

builder.cell_format.shading.background_pattern_color = drawing.Color.from_argb(198, 217, 241)
builder.paragraph_format.alignment = aw.ParagraphAlignment.CENTER
builder.font.size = 16
builder.font.name = "Arial"
builder.font.bold = True

builder.cell_format.width = 100.0
builder.write("Header Row,\n Cell 1")

# We don't need to specify this cell's width because it's inherited from the previous cell.
builder.insert_cell()
builder.write("Header Row,\n Cell 2")

builder.insert_cell()
builder.cell_format.width = 200.0
builder.write("Header Row,\n Cell 3")
builder.end_row()

builder.cell_format.shading.background_pattern_color = drawing.Color.white
builder.cell_format.width = 100.0
builder.cell_format.vertical_alignment = aw.tables.CellVerticalAlignment.CENTER

# Reset height and define a different height rule for table body.
builder.row_format.height = 30.0
builder.row_format.height_rule = aw.HeightRule.AUTO
builder.insert_cell()
    
# Reset font formatting.
builder.font.size = 12
builder.font.bold = False

builder.write("Row 1, Cell 1 Content")
builder.insert_cell()
builder.write("Row 1, Cell 2 Content")

builder.insert_cell()
builder.cell_format.width = 200.0
builder.write("Row 1, Cell 3 Content")
builder.end_row()

builder.insert_cell()
builder.cell_format.width = 100.0
builder.write("Row 2, Cell 1 Content")

builder.insert_cell()
builder.write("Row 2, Cell 2 Content")

builder.insert_cell()
builder.cell_format.width = 200.0
builder.write("Row 2, Cell 3 Content.")
builder.end_row()
builder.end_table()

doc.save(docs_base.artifacts_dir + "WorkingWithTables.formatted_table.docx")

Εισαγωγή υπάρχοντος πίνακα

Αν έχετε ήδη έναν πίνακα στο έγγραφό σας και θέλετε να προσθέσετε ένα αντίγραφο του πίνακα για να κάνετε κάποιες αλλαγές, ο πιο εύκολος τρόπος για να αντιγράψετε έναν πίνακα είναι χρησιμοποιώντας τη μέθοδο Table.clone ώστε να διατηρηθεί όλη η μορφοποίηση.
Στο παρακάτω παράδειγμα μπορείτε να δείτε πώς να εισάγετε έναν πίνακα, και αν χρειάζεστε το αρχείο προτύπου του παραδείγματος, μπορείτε να το κατεβάσετε από εδώ .

# For complete examples and data files, please go to https://github.com/aspose-words/Aspose.Words-for-Python-via-.NET
doc = aw.Document(docs_base.my_dir + "Tables.docx")

table = doc.get_child(aw.NodeType.TABLE, 0, True).as_table()

# Clone the table and insert it into the document after the original.
tableClone = table.clone(True).as_table()
table.parent_node.insert_after(tableClone, table)

# Insert an empty paragraph between the two tables,
# or else they will be combined into one upon saving this has to do with document validation.
table.parent_node.insert_after(aw.Paragraph(doc), table)
    
doc.save(docs_base.artifacts_dir + "WorkingWithTables.clone_complete_table.docx")

Αν έχετε ερωτήσεις σχετικά με τους πίνακες, τα προϊόντα Aspose.Words for Python via .NET και χρειάζεστε βοήθεια από τους προγραμματιστές Υποστήριξης με Πληρωμή για την υλοποίηση του API μας στο έργο σας, μη διστάσετε να επικοινωνήσετε μαζί μας .