Python 如何解决最后一行最后一个输出有逗号问题

题目:
输入一个2(包含)至9(包含)之间的一位数字例如7(由oj系统自动输入),输出1-100中剔除了包含该数字例如“7”、该数字的倍数例如7的倍数的所有数字,并且⼀行输出10个数字(最后一行可能不足10个数),数字之间用“,”分隔。输出结果如样例所示。

我写的是这样的

x=int(input())
astr=str(x)
alst=[]
count=0
for i in range(1,101):
    flag=str(i).find(astr)
    if flag==-1 and int(i)%x!=0:
        count+=1
        alst.append(str(i))
        
        if count%10==0:
            print(i,end="\n")
        else:
            print(i,end=",")

运行结果及报错内容

现在问题是

img

如果最后一行不满10个,就会有个逗号,我不知道该怎么处理最后一个逗号

我的解答思路和尝试过的方法

上网找了一些方法比如 pop strip 试了下都不太行
我想再加个判断句 ,好像也不对

 elif alst.index(i)==count-1:
            print(i,end="")

我想要达到的结果

麻烦大家帮忙解答,万分感谢

你题目的解答代码如下:

x=int(input())
astr=str(x)
alst=[]
count=0
fiag = False
for i in range(1,101):
    flag=str(i).find(astr)
    if flag==-1 and int(i)%x!=0:
        count+=1
        alst.append(str(i))
        if fiag:
            print(",",end="")
        if count%10==0:
            print(i,end="\n")
            fiag = False
        else:
            print(i,end="")
            fiag = True

 

img

如有帮助,请点击我的回答下方的【采纳该答案】按钮帮忙采纳下,谢谢!

img

您好,我是有问必答小助手,您的问题已经有小伙伴帮您解答,感谢您对有问必答的支持与关注!
PS:问答VIP年卡 【限时加赠:IT技术图书免费领】,了解详情>>> https://vip.csdn.net/askvip?utm_source=1146287632