-
Jaunākie Ieraksti
-
Claude Opus dod labākus rezultātus kā Claude Sonet https://www.anthropic.com/news/claude-3-family
-
Tikpat labi agrāk varēja spriest, kā varēja uzzināt, kuri prot rēķināt (lēni, bet gandrīz pareizi) un kuri - lietot kalkulatoru. Kādu laiku atpakaļ redzēju video, kur kāda skolotāja izteica savu viedokli par generative AI. Sak', agrāk, kad parādījās kalkulatori, bērniem aizliedza tos izmantot, jo domāja, ka tas tikai notrulinās un nāks par ļaunu. Beigās izrādījās, ka ir mazliet otrādāk - ja iemācās izmantot to kalkulatoru, tad var veltīt laiku daudz sarežģītākām lietām, rezultātā sanāk daudz gudrāki, spējīgāki ļautiņi. Ar AI būtībā tas pats - skolām jāiemācās nevis aizliegt un apkarot AI, bet produktīvi izmantot to mācību procesā. IMHO tas pats attiecas uz darba vidi… Man iepriekšējā darbā nebija iespējas izmantot AI, rezultātā gan koda rakstīšana bija lēnāka, gan arī tas, ko Andris minēja par reviewiem - tie var prasīt nedēļas, reizēm pat mēnešus. Pēc tāda reviewa ne vairs tā koda rakstīšanai vajadzīgā vide pieejama, nedz vispār brancha jēgu kāds atceras, normāli iemergot visu versiju pamata branchos arī vairs nevar, jo ir simtiem konfliktu. Visai daudz laika (dzīves) sanāk vienkārši izmest mēslainē tādu procesu dēļ. Jācer, ka nākamajā darbā ar attieksmi pret AI būs labāk, tikai vispirms jāatrod to darbu, man kā "programmētājam" tagad grūti, visur AI aizvietojis
-
Tāka viss atkarīgs kā pajautā, jeb ko konkrēti vajag, nevis kautkādu nesaprotamu jautājumu. Plus nav ne jausmas, kā tikt pie tā MS Copilota (kas nav domāts koda rakstīšanai). Mans piemērs ir no Claude.
-
Bildes ir labas, bet piemēra kods? Ir pieejams? O! viss jau ir. Liels paldies, es jau biju nomocījies uzstādīt jautājumus.
-
No kuras puses skatās uz krišanu. Ka rietumu šmiga paliek dārgāk jau ir labi krieviem, vairāk izvēlēsies vietējo, šajā gadījumā krievi no kursa un sankcijām tikai iegūst. Par kursu +10 rubļi Gazprom un Rosneft un valsts kase tikai priecāsies, algas un nodokļi ir rubļos, izmaksas pamatā rubļos. Bet veidojas tas no naftas/gāzes cenas tirgū, cik valūtas tā atved uz pārdošanu, ja nafta krīt- rublis kāps, un otrādi. Šeit kā redzams gāzi atbalsta un pieprasījumu globāli uzturēs, ar domu ka tagad maksājam un ņemam no pareizās, dārgās mucas, tas nekas ka tie trauki labāk vai sliktāk ir savienoti un ar tendenci kad infrastruktūras kas dublējas paliek vairāk, galvenais ka krāns tagad ir pareizais. A95 ko iegūst un pārdod par rubļiem nekas nemainas, tā pati peļņa, mainās tas ka tirgotājam rodas vēlme pārdot ārpus RU kur tirdzniecība ir valūtā un pēc kursa ir +10rbļ vairāk. Ja neierobežo tā eksportu būs kā ar granulām te savulaik, deficīts vai augsta cena, nevis tāpēc ka trūkst vai maz nopelna, bet tāpēc ka ir kas maksā vairāk un pārdos tam kur nopelnīs vēl vairāk. Tad nu valsts to sāk regulēt ar eksporta ierobežojumiem.
-
Pat strādā Tik jāpieregulē cik rindas lapā gribi (to viņš ne pārāk precīzi izrēķina), bet tas izskatās ka atkarīgs no lapas izvēlētajām vienībām (milimetri, punkti utt) from PySide6.QtWidgets import (QApplication, QMainWindow, QTableView, QWidget, QVBoxLayout, QPushButton, QFileDialog) from PySide6.QtCore import Qt, QAbstractTableModel, QRectF from PySide6.QtGui import QPainter, QPageSize from PySide6.QtPrintSupport import QPrintPreviewDialog, QPrinter import sys class TableModel(QAbstractTableModel): def __init__(self, data): super().__init__() self._data = data def rowCount(self, parent=None): return len(self._data) def columnCount(self, parent=None): return len(self._data[0]) if self._data else 0 def data(self, index, role=Qt.DisplayRole): if role == Qt.DisplayRole: return str(self._data[index.row()][index.column()]) return None def headerData(self, section, orientation, role=Qt.DisplayRole): if role == Qt.DisplayRole: if orientation == Qt.Horizontal: return f"Column {section + 1}" return str(section + 1) return None class TablePrinter: def __init__(self, table): self.table = table def print_table(self, printer): painter = QPainter() painter.begin(printer) # Get the table's dimensions model = self.table.model() rows = model.rowCount() cols = model.columnCount() # Calculate cell dimensions page_rect = QRectF(printer.pageRect(QPrinter.Point)) table_width = page_rect.width() cell_width = table_width / cols cell_height = 40 # Adjust this value to change row height # Calculate how many rows can fit on one page page_height = page_rect.height() rows_per_page = int(page_height / cell_height) # TODO: This seems to be incorrect print(rows_per_page) # Initialize position variables current_row = 0 y_position = 0 while current_row < rows: if current_row > 0: printer.newPage() y_position = 0 # Print headers on each page for col in range(cols): header_rect = self.table.model().headerData(col, Qt.Horizontal, Qt.DisplayRole) painter.drawText( QRectF( col * cell_width, y_position, cell_width, cell_height ), Qt.AlignCenter, str(header_rect) ) y_position += cell_height # Print rows for this page rows_on_this_page = min(rows_per_page, rows - current_row) for row in range(rows_on_this_page): for col in range(cols): index = model.index(current_row + row, col) text = model.data(index, Qt.DisplayRole) # Draw cell borders painter.drawRect( QRectF( col * cell_width, y_position, cell_width, cell_height ) ) # Draw cell content painter.drawText( QRectF( col * cell_width, y_position, cell_width, cell_height ), Qt.AlignCenter, str(text) ) y_position += cell_height current_row += rows_per_page painter.end() class MainWindow(QMainWindow): def __init__(self): super().__init__() self.setWindowTitle("Table Printing Example (PySide6)") self.resize(800, 600) # Create main widget and layout main_widget = QWidget() self.setCentralWidget(main_widget) layout = QVBoxLayout(main_widget) # Create sample data self.sample_data = [ [f"Item {i}", f"Value {i}", f"Data {i}"] for i in range(1, 101) ] # Create and set up table self.table_view = QTableView() self.model = TableModel(self.sample_data) self.table_view.setModel(self.model) layout.addWidget(self.table_view) # Create print buttons print_button = QPushButton("Print") print_button.clicked.connect(self.print_table) layout.addWidget(print_button) preview_button = QPushButton("Print Preview") preview_button.clicked.connect(self.print_preview) layout.addWidget(preview_button) # Create PDF export button pdf_button = QPushButton("Export to PDF") pdf_button.clicked.connect(self.export_to_pdf) layout.addWidget(pdf_button) def print_table(self): printer = QPrinter() printer.setPageSize(QPageSize(QPageSize.A4)) # printer.setPageOrientation(QPrinter.QPageLayout.Portrait) dialog = QPrintPreviewDialog(printer) dialog.paintRequested.connect(self.handle_paint_request) dialog.exec() def print_preview(self): printer = QPrinter() preview_dialog = QPrintPreviewDialog(printer) preview_dialog.paintRequested.connect(self.handle_paint_request) preview_dialog.exec() def export_to_pdf(self): file_name, _ = QFileDialog.getSaveFileName( self, "Export PDF", "table.pdf", "PDF Files (*.pdf)" ) if file_name: printer = QPrinter() printer.setOutputFormat(QPrinter.OutputFormat.PdfFormat) printer.setOutputFileName(file_name) printer.setPageSize(QPageSize(QPageSize.A4)) # printer.setPageOrientation(QPrinter.QPageLayout.Portrait) self.handle_paint_request(printer) def handle_paint_request(self, printer): table_printer = TablePrinter(self.table_view) table_printer.print_table(printer) if __name__ == '__main__': app = QApplication(sys.argv) window = MainWindow() window.show() sys.exit(app.exec())
-
Nav nedz mazākās nojausmas. Jāprasa Andrim vai Jurkam, tiem saprašanas par notiekošo nav ne kādas, bet viedoklis ir un visu zina
-
Tas nepalīdzētu, jo AI dotajiem piemēriem jāpalabo arī importi, priekš tam ir PyCharm python redaktors. Tas māk salabot importus. Pēc vairākiem jautājumiem, kur es pažēlojos, ka redzu pliku baltu lapu. Viņš beidzot iedeva šķību, greizu, bet strādājošu piemēru, kas varētu būt labs starts. Kreisajā augšējā stūrī ir daļa no tabulas, ko knapi var redzēt un nez kāpēc 250 lapas: Kaut kā jāmēģina komunicēt ar to MS Copilot. Ja nu kāds biedrs grib vai var palīdzēt, tad lūk ir strādājošs kods: # IMPORTS import sys from PySide6.QtWidgets import QApplication, QTableView, QVBoxLayout, QWidget, QPushButton from PySide6.QtPrintSupport import QPrinter, QPrintPreviewDialog from PySide6.QtGui import QPainter, QStandardItemModel, QStandardItem from PySide6.QtCore import Qt, QRect, QPoint # MAIN CLASS class TableViewWidget(QWidget): def __init__(self): super().__init__() self.table = QTableView() self.model = QStandardItemModel(100, 10) # Example: 100 rows, 10 columns self.table.setModel(self.model) self.populate_data() # Button to show print preview of the table self.preview_button = QPushButton("Print Preview") self.preview_button.clicked.connect(self.onPrintPreviewButtonClick) layout = QVBoxLayout() layout.addWidget(self.table) layout.addWidget(self.preview_button) self.setLayout(layout) def populate_data(self): for row in range(100): # Populate with more rows for column in range(10): # Populate with more columns item = QStandardItem(f'Item {row + 1}, {column + 1}') self.model.setItem(row, column, item) # PRINTING def print_preview(self, printer): painter = QPainter(printer) painter.setRenderHint(QPainter.Antialiasing) page_rect = printer.pageRect(QPrinter.Unit.Point) # Use QPrinter.Unit.Point for pageRect # Set up the scaling scale_x = page_rect.width() / self.table.width() scale_y = page_rect.height() / self.table.height() scale_factor = min(scale_x, scale_y) painter.scale(scale_factor, scale_factor) # Calculate total height and rows per page total_rows_height = sum(self.table.rowHeight(row) for row in range(self.model.rowCount())) rows_per_page = int(page_rect.height() / (self.table.rowHeight(0) * scale_factor)) # Calculate number of pages required total_pages = (total_rows_height + rows_per_page - 1) // rows_per_page for page in range(total_pages): if page > 0: printer.newPage() self.print_page(painter, page, rows_per_page) painter.end() def print_page(self, painter, page, rows_per_page): start_row = page * rows_per_page end_row = min(start_row + rows_per_page, self.model.rowCount()) # Ensure only the required rows are visible for row in range(self.model.rowCount()): self.table.setRowHidden(row, row < start_row or row >= end_row) # Render the visible part of the table self.table.render(painter, QPoint(0, 0), QRect(), QWidget.RenderFlag.DrawChildren) # Restore visibility of all rows after rendering for row in range(self.model.rowCount()): self.table.setRowHidden(row, False) def onPrintPreviewButtonClick(self): printer = QPrinter(QPrinter.HighResolution) preview_dialog = QPrintPreviewDialog(printer, self) preview_dialog.paintRequested.connect(self.print_preview) preview_dialog.resize(900, 600) preview_dialog.exec() # PRINTING END if __name__ == '__main__': app = QApplication(sys.argv) widget = TableViewWidget() widget.show() sys.exit(app.exec())
-
-
Nu blin no tava jautājuma apraksta var saprast ka tev vajag piemēru kā uztaisīt pagination iekš QTableView Nav man PySide pieinstalēts, bet piemērs ko iedod uz jautājumu Could you give me an example that demonstrates how to print a QTableView including all data, not just the visible portion. Iedod diezgan sakarīgu kodu.
-
Apnikušais piemērs ir aptuveni šāds (vai pat sliktāks, jo nav Zoom pa visu lapu un atstarpes no lapas malām): # IMPORTS import sys from PySide6.QtWidgets import QApplication, QTableView, QVBoxLayout, QWidget, QPushButton from PySide6.QtPrintSupport import QPrinter, QPrintDialog, QPrintPreviewDialog from PySide6.QtGui import QPainter, QStandardItemModel, QStandardItem from PySide6.QtCore import Qt, QRect, QPoint # MAIN CLASS class TableViewWidget(QWidget): def __init__(self): super().__init__() self.table3 = QTableView() self.model = QStandardItemModel(10, 3) # Example: 10 rows, 3 columns self.table3.setModel(self.model) self.populate_data() # Button to show print preview of the table self.preview_button = QPushButton("Print Preview") self.preview_button.clicked.connect(self.onPrintPreviewButtonClick) layout = QVBoxLayout() layout.addWidget(self.table3) layout.addWidget(self.preview_button) self.setLayout(layout) def populate_data(self): for row in range(10): for column in range(3): item = QStandardItem(f'Item {row}, {column}') self.model.setItem(row, column, item) # PRINTING def print_preview(self, printer): painter = QPainter(printer) rect = painter.viewport() size = self.table3.size() size.scale(rect.size(), Qt.KeepAspectRatio) # Plusi un mīnusi mani - tās ir atstarpes no lapas malām (HIGH-Zen) painter.setViewport(rect.x()+120*2, rect.y()+120*2, size.width()-240*2, size.height()-240*2) painter.setWindow(self.table3.rect()) self.table3.render(painter, QPoint(), QRect(), QWidget.RenderFlag.DrawChildren) painter.end() def onPrintPreviewButtonClick(self): printer = QPrinter(QPrinter.HighResolution) preview_dialog = QPrintPreviewDialog(printer, self) preview_dialog.paintRequested.connect(self.print_preview) preview_dialog.exec() # PRINTING END if __name__ == '__main__': app = QApplication(sys.argv) widget = TableViewWidget() widget.show() sys.exit(app.exec())
-
-
Izprintēt QTableView uz vairākām lapām. Nevis tikai redzamo daļu uz vienas lapas. Šībrīža prototipa aktuālā versija māk darīt šādi:
-
Nu tad jādefinē, kas ir svarīgāk - rakstīt kodu vai būt spējīgam pietietot pieejamos instrumentus effektīvi? Galu galā kā darbadevējam jau nav starpības vai tu pats rakstiji to kodu vai AI, galvenais jau vai tas atrisināja problēmu. Tas ir viss jautājums? tur jau arī programmētājam nav skaidrs ko tu jautā.
-
Man liekas, ka man nekāds AI nepalīdzēs, izmēģināju vairākus Free AI variantus un šie dod vienu un to pašu piemēru, kuru es jau zinu (un izmantoju tā uzlabotu versiju) - izprintē tikai vienu lapu ar QTableView redzamajām rindām. Jautājums ir: Ja arī maksas versija dos to pašu piemēru, tad tiktu veltīgi zaudēti 10 amerikāņu papīrīši. Vajadzēs laikam pašam iedziļināties tēmā un beidzot uztaisīt.
-
Interesanti a kā tagad atlasīt cilvēkus ? Kā uzzināt kurš ir nazis un kurš māk labi lietot ChatGPT?
-
varat nemekleet, jau norezerveeju intereses pec janotestee, ja dt770 kuras man tiri labi patik seit skaitoties nebaudami mesli derigi tikai specifiskam pielietojumam studija, tad hd6xx peec vinjaam vispar jaabuut ka kosmosam
-
Nu kādam jau vajadzēs pateikt AI ko rakstīt, plus/mīnus. Bet nu jā, kapēc nelikvidēt programmētājus ja var? Pirmais kas to veiksmīgi ieviesīs nopelnīs labu piķi. Vai paši programmētāji, kur iemācīsies effektīvi pielietot iespējas, ko dod AI, būs produktīvāki, attiecīgi labāk apmaksāti un konkurētspējīgāki.
-
vajag iet vel talak un nolikvidet programetajus, lai kodu raksta AI uznemuma finansu raditaji uzlabosies ieverojami
-
Es nebraucu uz krieviju(lai no malas paskatītos). Un neklausos arī vairs (jau krietni ilgi) visus eksperdus (arī tādus kā Tu), kuri jau gandrīz 3 gadus sprediķo, ka nu tūlīt, tūlīt šiem gals klāt. Aha, un sevišķi krievu parasto interesē rietumu šmiga (ko laikam Tu viņiem ved) 😉. Tā kā, paldies, par redzējumu, bet savas fantāzijas, ko es klausos un ko skatos, vari apcerēt sava vilcēja spaļņikā.
-
-
Foruma statistika
-
Kopā tēmu101.5k
-
Kopā ierakstu1.5m
-