前言:
此时兄弟们对“c语言循环结构星星题”大致比较关心,大家都想要学习一些“c语言循环结构星星题”的相关知识。那么小编也在网上搜集了一些有关“c语言循环结构星星题””的相关文章,希望看官们能喜欢,小伙伴们一起来学习一下吧!任务要求:通过B列字符组合,生成C列星号,如图所示
根据自下而上的设计思路,我先做几个小函数。
def 生成星(n): return "★"*n+"☆"*(10-n)
这个函数可以生成1-10个星,"★"*n表示n个实星,"☆"*(10-n)表示余下空星。这个函数也相当于完成了第一个星星串。
def 生成串(n): return '\n'+生成星(n)
这个函数只是多加了一个回车换行,它相当于了后面第2个到第n个星星串
def 生成全串(str): a=str.split('-') b=生成星(int(a[0])) c="" for i in range(1,len(a)): c=c+生成串(int(a[i])) return b+c
a=str.split('-')把str用“-”分隔成数组,b=生成星(int(a[0]))获得第1个星星串。
for i in range(1,len(a)):
c=c+生成串(int(a[i]))
这两句对第2到第n个后续星星串拼接,n在这里面是len(a)。如果str="4-3-5",那么len(a)=3
如果str="4-3",那么len(a)=2
c最后获得第2到第n个后续星星串拼接。
b+c获得第1个星星串+第2到第n个后续星星串总拼接
da=ws.getgrid("B2:B7")for i in range(0,len(da)): ws.setcell(i+2,4,生成全串(da[i][0]))
da获取range("B2:B7")的二维数组内容,len(da)表示二维数组的行数,本实例中是6
生成全串(da[i][0]),就是对da每一行0列的数据进行“生成全串”
ws.setcell(i+2,4,生成全串(da[i][0])),表示在i+2行,也就是从第2行开始,在第4列设置前面生成的字符串。
本示例演示了python处理excel字符小示例(函数,循环及自下而上的设计方式)
附加公式方法,使用了辅助列:
标签: #c语言循环结构星星题