python으로 구글 스프레드시트 append_row 대신에 앞쪽에 행 더하기.

조회수 1421회
# coding:utf-8

import gspread
from datetime import datetime
from oauth2client.service_account import ServiceAccountCredentials
import time
import json
import batch_config

scope = [
    'https://spreadsheets.google.com/feeds',
    'https://www.googleapis.com/auth/drive',
]

client_email = 'xxxxx@xxxxxxxx.iam.gserviceaccount.com'
json_file_name = 'xxx-xxxxxx-25d5db962369.json'

credentials = ServiceAccountCredentials.from_json_keyfile_name(json_file_name, scope)
gc = gspread.authorize(credentials)
spreadsheet_url = 'https://docs.google.com/spreadsheets/d/xxxxxxxxxxxxMmdQ_dw/edit#gid=0'

doc = gc.open_by_url(spreadsheet_url)

worksheet = doc.worksheet(u'one_day_rating')
worksheet.update_acell("B2", '확률')
worksheet.append_row(['test', 'test', 'test', 'test', 'test', 'test'])

위의 코드처럼 작성했으면 B2 맨 처음에 '확률'이란 단어가 저장되고 그 다음 줄에 test 리스트가 저장되는데

리스트를 append 시켰을 때 아래로 append 되는 것이 아니라 위로 쌓이면서 위에 있는 데이터들이 아래로 밀리게끔 쌓을 수 있을까요?

데이터 쌓이는 순서를 예를 들면

  1. 최신
  2. 전 데이터 1
  3. 전 데이터 2
  4. 전 데이터 3

이런식으로요~!

  • 말씀하시는 작업을 영어로는 prepend라고 합니다. 근데 찾아보니 gspread라는 패키지가 prepend를 지원하지는 않는거 같아요. 저라면 등록일시 컬럼을 같이 꽂고, 다 작업한 다음에, 등록일시 기준으로 desc 정렬 처리할 것 같네요. 엽토군 2019.12.6 11:50
  • 헐 그렇군요 혹시 제 상황이 매일 확률을 구할 때마다 수치가 변화는거고 이미 하루라도 지난 확률은 기록 된 것 아니면 뽑을 수가 없는 상태인데. 어제걸 append해둔 상태에서 최신 확률을 맨 위로 가게하려면 먼저 데이터를 읽고 그 위에 데이터를 올린다음 스프레드시트에 저장하는 방법밖에 없을까요? 김재민 2019.12.6 13:15
  • insert_row 로 안 되나요? api 설명 보면 insert_row 로 될 듯 한데요. nowp 2019.12.6 13:18
  • 헐 됩니다 insert_row가 있었네요 감사합니다!! 혹시 스프래드시트 데이터 쓰면서 셀이나 행, 열에 글씨 크기 또는 색상 조정은 못하나요? 김재민 2019.12.6 16:24
  • insert_row 하는 구간의 데이터를 배경색 gray로 조절해 보고싶은데 색상 옵션은 안 보이는 거 같아서요! 혹시 알려주시면 감사하겠습니다 김재민 2019.12.6 16:27
  • 다른 질문은 따로하세요. nowp 2019.12.6 17:24

답변을 하려면 로그인이 필요합니다.

프로그래머스 커뮤니티는 개발자들을 위한 Q&A 서비스입니다. 로그인해야 답변을 작성하실 수 있습니다.

(ಠ_ಠ)
(ಠ‿ಠ)