Python学习-函数

哪位程序猿能给一些建议以解决这个程序里TODO那行的问题?

def line():
        print("-" * 25 ) 
    
def lines(b):
    i = 0
    while i < b:
        line()
        i += 1
        
a = input("请再次任意输入一个正整数:")    
lines(int(a))
    
#TODO: (改进)如何修改,使在每行横线数可自定义的情况下,程序仍能达到预期效果?

img

def line(n):
    print("-" * n) # 打印n个横线

def lines(b, m):
    i = 0
    while i < b:
        line(m) 
        i += 1

a = input("请任意输入一个正整数:") # 输入第一个正整数
b = input("请再次任意输入一个正整数:") # 输入第二个正整数
lines(int(a), int(b)) 


def line(b):
        print("-" * b) 
    
def lines(b):
    i = 0
    while i < b:
        line(b)
        i += 1
        
a = input("请再次任意输入一个正整数:")    
lines(int(a))

你可以把line()加一个参数

然后 lines 参数改成一个列表

b = list(map(int,input().split())
应该就可以自定义每行的横线数了,


def line(a):
        print("-" * a ) 
    
def lines(b):
    for i in b:
        line(b)
   
        
a = list(map(int,input("请输入你每一行想要的横线数") .split()))   
lines(a)


我没有实际运行 但思路就这样

【以下回答由 GPT 生成】

问题分析

这个程序希望根据用户的输入,在屏幕上输出指定数量的横线。目前的程序中,每一行都是固定的25个横线,而要解决的TODO问题是希望能够根据用户的输入,自定义每行横线的数量。

解决方案

要解决这个问题,我们可以通过修改函数line()lines()来实现。

首先,我们需要修改line()函数,使得该函数能够根据输入的参数,输出指定数量的横线。

然后,我们需要修改lines()函数,以便在每行输出横线之前,根据用户的输入调用line()函数。

最后,我们需要在主程序中获取用户的输入,并调用lines()函数将其作为参数传递给lines()函数。

下面是修改后的代码示例:

def line(n):
    print("-" * n)

def lines(b, n):
    i = 0
    while i < b:
        line(n)
        i += 1

a = input("请再次任意输入一个正整数:")
b = int(a) # 输入行数
n = int(input("请输入每行横线的数量:")) # 输入每行横线数量
lines(b, n)

这样,用户就可以输入希望输出的行数和每行横线的数量了。

结论

通过以上修改,我们可以实现根据用户的输入自定义每行横线的数量,并输出指定数量的横线。



【相关推荐】


  • 给你找了一篇非常好的博客,你可以看看是否有帮助,链接:Python TODO说明
  • 除此之外, 这篇博客: Python汉字转数字中的 TODO 部分也许能够解决你的问题。

如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^