-1
b=int(1)

if b == 1:
     b=2
     c = "on my thumb"
elif b== 2:
    b=3
    c = "on my shoe"
elif b== 3:
    b=4
    c = "on my knee"
elif b== 4:
    b+1
    c = "on my door"
elif b== 5:
    b+1
    c = "on my hive"
elif b== 6:
    b+1
    c = "on my sticks"
elif b== 7:
    b+1
    c = "up in heaven"
elif b== 8:
    b+1
    c = "on my gate"
elif b== 9:
    b+1
    c = "on my spine"
else:
    c = "once again"

for r in range(10):
    print("This old man, he played one He played knick-knack " + c +" Knick-knack paddywhack, give your dog a bone This old man came rolling home")
    b+1

编码相对较新,所以我真的不知道自己在做什么,但是我试图让 c 在每次打印 r 时都进行更改……以便 IT 完成旧的童谣。我正在用python编码这个......

4

3 回答 3

4
parts = ["on my thumb", "on my shoe", ...]
numerators = ["one", "two", "three", ...]

for num, part in zip(numerators, parts):
    print "This old man, he played " + num
    print "He played knick-knack " + part
    print "Knick-knack paddywhack, give your dog a bone"
    print "This old man came rolling home"
于 2012-10-09T15:14:54.543 回答
0

只需将字符串存储在数组或列表中

lines = ["on my thumb", "on my shoe", "...."....]

然后在 c#-ish 语法中的 for 循环的帮助下遍历该数组(或 list ):

foreach(line in lines)
{
  print("bla" + line + "blubb");
}
于 2012-10-09T15:14:49.037 回答
0

也许是这样的:

string b[10] = {"on my thumb","on my shoe","on my knee","on my door","on my hive","on my sticks","up in heaven","on my gate","on my spine","once again"};

for (i=0; i<b.length; i++) {
   print("This old man, he played one He played knick-knack " + b[i] +" Knick-knack paddywhack, give your dog a bone This old man came rolling home.\n");
}

由于这些值不会改变,您可以创建一个静态数组来保存这些值,然后您可以在显示结果的同时循环浏览内容。

于 2012-10-09T15:17:57.050 回答