编写一个测试程序,每行从1到Z打印10个字符

时间:2017-07-17 06:34:27

标签: python function

编写一个使用以下标题打印字符的函数:
def printChars(ch1, ch2, numberPerLine)
此功能打印ch1ch2之间的字符,每行指定的数字 我想编写一个测试程序,每行从1到Z打印10个字符。

def main():
    printCenter code herehars("1","Z",10)

def printChars(ch1,ch2,numberPerLine):
    for i in range(ord(ch1), ord(ch2) + 1):
        print(chr(i), end='')
        if (i - ord(ch1)) % numberPerLine == numberPerLine - 1:
            print()

main()

输出:

123456789:
;<=>?@ABCD
EFGHIJKLMN
OPQRSTUVWX
YZ

该程序应打印:

0123456789
ABCDEFGHIJ
KLMNOPQRST
UVWXYZ

3 个答案:

答案 0 :(得分:1)

你能试试吗,

var someDate = new Date(); var numberOfDaysToAdd = 5; someDate.setDate(someDate.getDate() + numberOfDaysToAdd); $('.selector').val(formatDate(someDate));

答案 1 :(得分:1)

一种方法是首先构建可用输出chars,手动创建字符串或从string.digits获取值。接下来使用字符串索引来确定字符串中存在ch1ch2个字符的位置。通过这种方式,您可以切割字符串,为您提供所需的所有字符。最后使用range()中的0output的长度。最后一个参数告诉它跳过numberPerLine值。然后,它为您提供打印每行的起始索引。

import string

def printChars(ch1, ch2, numberPerLine):
    chars = string.digits + string.ascii_uppercase  # Same as doing 0123456789A......Z
    output = chars[chars.index(ch1):chars.index(ch2)+1]

    for start in range(0, len(output), numberPerLine):
        print(output[start:start+numberPerLine])

printChars("0", "Z", 10)

给你:

0123456789
ABCDEFGHIJ
KLMNOPQRST
UVWXYZ

答案 2 :(得分:0)

你可能正在寻找这样的东西:

def main():
    printCenter code herehars("1","Z",10)

def printChars(ch1,ch2,numberPerLine):
    counter = 0
    for i in range(ord(ch1), ord(ch2) + 1):
        if chr(i).isalnum():
            print(chr(i), end='')
            counter++
        if counter % numberPerLine == numberPerLine - 1:
            print()

main()