Форум программистов, компьютерный форум, киберфорум
Python для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
0 / 0 / 0
Регистрация: 17.11.2016
Сообщений: 1

Перейти на новую строку в Excel

17.11.2016, 18:39. Показов 3573. Ответов 0
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Добрый день!
Помогите с решением задачи, не понимаю как сделать цикл, чтобы проверял наличие записей в строке и если есть, переходил на следующую и добавлял туда свежие данные из базы.
То есть, каждый раз, когда выполняется скрипт, создавалась новая строка ниже с данными.

Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
from datetime import datetime
import xlwt
import cx_Oracle
 
dsn_tns = cx_Oracle.makedsn('host', 'port', 'sid')
db = cx_Oracle.connect('test', 'test', dsn_tns)
 
cursor = db.cursor()
cursor.execute('select count(c.DATE) from test_1 c where c.DATE > TRUNC(SYSDATE)')
 
for sql_row in cursor:
    print(sql_row[0])
 
book = xlwt.Workbook()
sheet = book.add_sheet('Test')
style = xlwt.XFStyle()
style.num_format_str = 'D-MMM-YY'
 
sheet.write(0, 0, datetime.now(), style)
sheet.write(0, 1, sql_row[0])
 
book.save('sql-test.xls')
И еще вопрос, в 20 строке ругается на sql_row[0] - this inspection warns about local variable referenced before assignment, если сделать так, то ошибка пропадает, на сколько правильное это решение? Как сделать правильно?

Python
1
2
3
4
5
6
7
8
client_count = None
 
for sql_row in cursor:
    if client_count is None:
        client_count = sql_row[0]
    print(sql_row[0])
 
sheet.write(0, 1, client_count)
Заранее спасибо за любую помощь!

Добавлено через 6 часов 5 минут
Неактуально, сделал...
Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
from xlutils.copy import copy
from datetime import datetime
import cx_Oracle
import xlwt
import xlrd
def get_clients_count():
    cursor = db.cursor()
    cursor.execute('select count(c.DATE) from test_1 c where c.DATE > TRUNC(SYSDATE)')
    for sql_row in cursor:
        print(sql_row[0])
    return sql_row[0]
dsn_tns = cx_Oracle.makedsn('host', 'port', 'sid')
db = cx_Oracle.connect('test', 'test', dsn_tns)
clients_count = get_clients_count()
style = xlwt.XFStyle()
style.num_format_str = 'D-MMM-YY'
wb = xlrd.open_workbook('sql-test.xls', formatting_info=True)
r_sheet = wb.sheet_by_index(0)
r = r_sheet.nrows
book = copy(wb)
sheet = book.get_sheet(0)
sheet.write(r, 0, datetime.now(), style)
sheet.write(r, 1, clients_count)
book.save('sql-test.xls')
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
17.11.2016, 18:39
Ответы с готовыми решениями:

Перейти на новую строку
Вывести таблицу умножения на 5 { const int size = 5; int i = 0; int j = 0; for (i = 1; i <= size; i++) { for (j = 1;...

Как перейти на новую строку?
Как перейти на новую строку в memo?

Как перейти на новую строку в Caption?
Label1.Caption присваиваем переменную типа string и если строчка содержит больше 20 символов, то в Caption записать на новую строчку.

0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
17.11.2016, 18:39
Помогаю со студенческими работами здесь

TextArea как перейти на новую строку
вообщем есть JFrame form в ней нужно вывести некоторое значение if(num==2){ for (int i=0; i<fdish.size(); i++){ ...

Как перейти на новую строку в VB.NET?
Как перейти на новую строку в VB.NET? В вб 6 это было как vbCrLf?

Как в panel перейти на новую строку?
Как в panel перейти на новую строку?

Как перейти на новую строку в файле
Итак, у меня есть некоторый вопрос насчёт считывания из файла некоторых данный. Вообщем текстовые строки у меня берутся хорошо через...

Как по нажатию Enter перейти на новую строку в TextBox
Снова здравствуйте. Маленькая проблема возникла. Имею текстовое поле. Задаю команду, что при нажатии enter начинается новая строка, но...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
1
Ответ Создать тему
Новые блоги и статьи
делаю науч статью по влиянию грибов на сукцессию
anaschu 13.03.2026
прикрепляю статью
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога Финальные проекты на Си и на C++: hello-sdl3-c. zip hello-sdl3-cpp. zip Результат:
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
Как дизайн сайта влияет на конверсию: 7 решений, которые реально повышают заявки
Neotwalker 08.03.2026
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд. Даже если у вас. . .
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает монорепозиторий в котором находятся все исходники. При создании нового решения, мы просто добавляем нужные проекты и имеем. . .
Модульный подход на примере F#
DevAlt 06.03.2026
В блоге дяди Боба наткнулся на такое определение: В этой книге («Подход, основанный на вариантах использования») Ивар утверждает, что архитектура программного обеспечения — это структуры,. . .
Управление камерой с помощью скрипта OrbitControls.js на Three.js: Вращение, зум и панорамирование
8Observer8 05.03.2026
Содержание блога Финальная демка в браузере работает на Desktop и мобильных браузерах. Итоговый код: orbit-controls-threejs-js. zip. Сканируйте QR-код на мобильном. Вращайте камеру одним пальцем,. . .
SDL3 для Web (WebAssembly): Синхронизация спрайтов SDL3 и тел Box2D
8Observer8 04.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-sync-physics-sprites-sdl3-c. zip На первой гифке отладочные линии отключены, а на второй включены:. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru