题目描述:
#获得用户输入的一个整数,参考该整数值,打印输出"Hello World",要求:
#如果输入值等于0,输出"Hello World"
#如果输入值大于0,以两个字符一行方式输出"Hello World"
#如果输入值小于0,以垂直方式输出"Hello World"
代码如下:
s = "Hello World"
n = int(input())
if n==0:
print(s)
elif n>0:
st =""
for n in range(len(s)):
if(n+1)%2 != 0:
st = st+s[n]
if len(s)==(n+1):
print(st)
else:
st = st+s[n]
print(st)
st=""
else:
for n in s:
print(n)
代码解析:
s = "Hello World" #定义一个字符串s
n = int(input()) #输入一个数
#第一个判断:当n==0时执行
if n==0:
print(s)
#第二个判断:当n>0执行
elif n>0:
st ="" #设置一个空字符串
for n in range(len(s)): #循环遍历s字符串 range(len(s))就是range(0,11),len(s)=11 ,就是n从0开始循环到11
if(n+1)%2 != 0: #执行if语句 ,n = 0 时 ,条件成立
st = st+s[n] # s[n]代表s字符串中的第n个字符,如s = "Hello World",s[0]="H",s[1]=e,s[10]=d
if len(s)==(n+1):
print(st)
else:
st = st+s[n]
print(st)
st=""
#第一次循环: n = 0 时 (n+1)%2 == 1,if条件成立,st = st + s[n],所以st = h
#第二次循环: n = 1 时 (n+1)%2 == 0,if条件不成立;执行else语句,st = st + s[n],所以st = he,然后执行print(st),输出"he",并将st重新变成空字符串
#第三次循环:n = 2 时 (n+1)%2 == 1,if条件成立,st = st + s[n],所以st = st + s[2] = l ;
#接下来以此循环,直到循环结束
#最后一步: n =10 时,(n+1)%2 ==0,if条件成立,st = st + s[10],所以st = d;此时条件len(s) == (n+1)成立,结束循环;
#第三个判断:当n<0时执行
else:
for n in s: #循环遍历字符串s
print(n) #当n = 0 时,打印 "H";当n = 1 时,打印 "e",依次类推
友情链接: