Сделал функцию, которая случайным образом создает имя пользователя, но я не могу присвоить имена пользователей столбцу - PullRequest
0 голосов
/ 03 мая 2019

Я использую openpyxl с python 3 и пытаюсь создать скрипт, который создает случайное имя пользователя для десяти разных пользователей. Затем я пытаюсь заставить скрипт добавить каждое имя пользователя в определенный столбец в файле Excel.

Это мой код на данный момент:

import random
import openpyxl

path = "E:\\Desktop"

wb = openpyxl.load_workbook('python.xlsx')
sheet = wb.active

def name_generator():
    color = ["Red", "Green", "Blue", "White", "Black", "Yellow", "Purple", "Orange", "Pink"]
    animal = ["Cat", "Dog", "Snake", "Mouse", "Tiger", "Leopard", "Moose", "Wolf", "Bear"]
    number = ["1", "2", "3", "4", "5", "6", "7", "8", "9", "10", "11", "12", "13", "14", "15"]

    randomColor = random.randrange(0, len(color))
    randomAnimal = random.randrange(0, len(animal))
    randomNumber = random.randrange(0, len(number))

    name = "Username: " + color[randomColor] + animal[randomAnimal] + number[randomNumber]

sheet['E1':'E10'] = name

wb.save('newpython.xlsx')

Функция создает случайное имя пользователя, но я не могу получить имя пользователя, назначенное для ячеек, Python говорит мне, что «имя» не определено.

Я пробовал это:

import random
    import openpyxl

    path = "E:\\Desktop"

    wb = openpyxl.load_workbook('python.xlsx')
    sheet = wb.active

    color = ["Red", "Green", "Blue", "White", "Black", "Yellow", "Purple", "Orange", "Pink"]
    animal = ["Cat", "Dog", "Snake", "Mouse", "Tiger", "Leopard", "Moose", "Wolf", "Bear"]
    number = ["1", "2", "3", "4", "5", "6", "7", "8", "9", "10", "11", "12", "13", "14", "15"]

    randomColor = random.randrange(0, len(color))
    randomAnimal = random.randrange(0, len(animal))
    randomNumber = random.randrange(0, len(number))

    name = "Username: " + color[randomColor] + animal[randomAnimal] + number[randomNumber]

    sheet['E1'] = name

    wb.save('newpython.xlsx')

и это добавляет имя пользователя в ячейку E1, но только E1, как и ожидалось.

У меня проблемы с назначением имен пользователей от строки 1 до строки 10 в столбце E. Я пытался использовать цикл for, но у меня еще не получилось, и я не уверен, что так будет. Надеюсь, мои объяснения достаточно хороши!

...