记得几年前用过Python,然后被那种“简洁”的换行给搞的痛不欲生后果断能用shell就用shell搞定,但现在貌似光用shell还是很吃力,又重新拿起来了。从基础看起,先来个从0加到100吧:
首先sehll实现起来比较简单,可以用for循环,用awk等。如下所示:
sum=0;for i in `seq 1 100`;do sum=`expr $i + $sum`;done;echo $sum
sum=0;for i in {0..100};do sum=`expr $i + $sum`;done;echo $sum
awk 'BEGIN {for (i=1;i<=100;i++) sum+=i;print sum}'
当然还可以用while循环
sum=0;i=1;while [ "$i" -le "100" ];do sum=`expr $i + $sum`;i=`expr $i + 1`;done;echo $sum
主要是1~100打印出来,然后用expr加起来即可。用python后才发现,原来可以比shell更加简单,而且用for循环也基本相同(忽略那可恶的换行把):
#!/usr/bin/python
# -*- coding:UTF-8 -*-
#Ownner By Anjing
#修改版:从0加到任意输入的整数
def Sum(max):
ret = 0
for i in range(max+1):
ret +=i
return ret
if __name__ == "__main__":
num = int(input('请输入从0加到多少:'))
print Sum(num)
#方法一
#print sum(range(1,101))
#方法二
#sum=0
#for i in range(1,101):
# sum +=i
#print sum
方法一就用sum和range两个函数一句话实现了1加到100;方法二是强加了一个for循环上去,变化不大。最上面未被注释掉的是稍微变动了,定义一个函数,以及通过输入函数参数来实现从0加到任意整数。
换行问题得通过不断的折磨才能修正…继续努力。
特别声明:商业网站转载需经作者同意,否则视为侵权!