1. 实现1-100的所有的和

print('**********方法一:for循环**********')
s1=0
for a in range(1,101):
    s1+=a
    print s1,
print('\n**********方法二:while循环**********')
b=1
s2=0
while b<101:
    s2+=b
    b+=1
    print s2,

运行结果: 

**********方法一:for循环********** 

1 3 6 10 15 21 28 36 45 55 66 78 91 105 120 136 153 171 190 210 231 253 276 300 325 351 378 406 435 465 496 528 561 595 630 666 703 741 780 820 861 903 946 990 1035 1081 1128 1176 1225 1275 1326 1378 1431 1485 1540 1596 1653 1711 1770 1830 1891 1953 2016 2080 2145 2211 2278 2346 2415 2485 2556 2628 2701 2775 2850 2926 3003 3081 3160 3240 3321 3403 3486 3570 3655 3741 3828 3916 4005 4095 4186 4278 4371 4465 4560 4656 4753 4851 4950 5050 

 **********方法二:while循环********** 

1 3 6 10 15 21 28 36 45 55 66 78 91 105 120 136 153 171 190 210 231 253 276 300 325 351 378 406 435 465 496 528 561 595 630 666 703 741 780 820 861 903 946 990 1035 1081 1128 1176 1225 1275 1326 1378 1431 1485 1540 1596 1653 1711 1770 1830 1891 1953 2016 2080 2145 2211 2278 2346 2415 2485 2556 2628 2701 2775 2850 2926 3003 3081 3160 3240 3321 3403 3486 3570 3655 3741 3828 3916 4005 4095 4186 4278 4371 4465 4560 4656 4753 4851 4950 5050

2. 实现1-500所有奇数的和;(扩展:下面程序演示了1-500的奇偶数以及奇偶数的和)

print('**********方法一:for循环**********')
L1=range(1,501)
L2=[]
L3=[]
s1=0
s2=0
for i in L1:
    if i%2==0:
        L2.append(i)
        s1+=i
    else:
        L3.append(i)
        s2+=i
print("#####"*21)
print L2
print '1-500中所有偶数的和是:',format(s1)
print("#####"*21)
print L3
print '1-500中所有奇数的和是:',format(s2)
print('\n**********方法二:while循环**********')
L4=[]
L5=[]
a=1
s3=0
s4=0
while a<501:
    if a%2==0:
        L4.append(a)
        s3+=a
        a+=1
    else:
        L5.append(a)
        s4+=a
        a+=1
print("#####"*21)
print L4
print '1-500中所有偶数的和是:',format(s3)
print("#####"*21)
print L5
print '1-500中所有奇数的和是:',format(s4)

**********方法一:for循环**********

######################################################################

[2, 4, 6, 8, 10, 12, 14, 16, 18, 20, 22, 24, 26, 28, 30, 32, 34, 36, 38, 40, 42, 44, 46, 48, 50, 52, 54, 56, 58, 60, 62, 64, 66, 68, 70, 72, 74, 76, 78, 80, 82, 84, 86, 88, 90, 92, 94, 96, 98, 100, 102, 104, 106, 108, 110, 112, 114, 116, 118, 120, 122, 124, 126, 128, 130, 132, 134, 136, 138, 140, 142, 144, 146, 148, 150, 152, 154, 156, 158, 160, 162, 164, 166, 168, 170, 172, 174, 176, 178, 180, 182, 184, 186, 188, 190, 192, 194, 196, 198, 200, 202, 204, 206, 208, 210, 212, 214, 216, 218, 220, 222, 224, 226, 228, 230, 232, 234, 236, 238, 240, 242, 244, 246, 248, 250, 252, 254, 256, 258, 260, 262, 264, 266, 268, 270, 272, 274, 276, 278, 280, 282, 284, 286, 288, 290, 292, 294, 296, 298, 300, 302, 304, 306, 308, 310, 312, 314, 316, 318, 320, 322, 324, 326, 328, 330, 332, 334, 336, 338, 340, 342, 344, 346, 348, 350, 352, 354, 356, 358, 360, 362, 364, 366, 368, 370, 372, 374, 376, 378, 380, 382, 384, 386, 388, 390, 392, 394, 396, 398, 400, 402, 404, 406, 408, 410, 412, 414, 416, 418, 420, 422, 424, 426, 428, 430, 432, 434, 436, 438, 440, 442, 444, 446, 448, 450, 452, 454, 456, 458, 460, 462, 464, 466, 468, 470, 472, 474, 476, 478, 480, 482, 484, 486, 488, 490, 492, 494, 496, 498, 500]

1-500中所有偶数的和是: 62750

######################################################################

[1, 3, 5, 7, 9, 11, 13, 15, 17, 19, 21, 23, 25, 27, 29, 31, 33, 35, 37, 39, 41, 43, 45, 47, 49, 51, 53, 55, 57, 59, 61, 63, 65, 67, 69, 71, 73, 75, 77, 79, 81, 83, 85, 87, 89, 91, 93, 95, 97, 99, 101, 103, 105, 107, 109, 111, 113, 115, 117, 119, 121, 123, 125, 127, 129, 131, 133, 135, 137, 139, 141, 143, 145, 147, 149, 151, 153, 155, 157, 159, 161, 163, 165, 167, 169, 171, 173, 175, 177, 179, 181, 183, 185, 187, 189, 191, 193, 195, 197, 199, 201, 203, 205, 207, 209, 211, 213, 215, 217, 219, 221, 223, 225, 227, 229, 231, 233, 235, 237, 239, 241, 243, 245, 247, 249, 251, 253, 255, 257, 259, 261, 263, 265, 267, 269, 271, 273, 275, 277, 279, 281, 283, 285, 287, 289, 291, 293, 295, 297, 299, 301, 303, 305, 307, 309, 311, 313, 315, 317, 319, 321, 323, 325, 327, 329, 331, 333, 335, 337, 339, 341, 343, 345, 347, 349, 351, 353, 355, 357, 359, 361, 363, 365, 367, 369, 371, 373, 375, 377, 379, 381, 383, 385, 387, 389, 391, 393, 395, 397, 399, 401, 403, 405, 407, 409, 411, 413, 415, 417, 419, 421, 423, 425, 427, 429, 431, 433, 435, 437, 439, 441, 443, 445, 447, 449, 451, 453, 455, 457, 459, 461, 463, 465, 467, 469, 471, 473, 475, 477, 479, 481, 483, 485, 487, 489, 491, 493, 495, 497, 499]

1-500中所有奇数的和是: 62500

**********方法二:while循环**********

######################################################################

[2, 4, 6, 8, 10, 12, 14, 16, 18, 20, 22, 24, 26, 28, 30, 32, 34, 36, 38, 40, 42, 44, 46, 48, 50, 52, 54, 56, 58, 60, 62, 64, 66, 68, 70, 72, 74, 76, 78, 80, 82, 84, 86, 88, 90, 92, 94, 96, 98, 100, 102, 104, 106, 108, 110, 112, 114, 116, 118, 120, 122, 124, 126, 128, 130, 132, 134, 136, 138, 140, 142, 144, 146, 148, 150, 152, 154, 156, 158, 160, 162, 164, 166, 168, 170, 172, 174, 176, 178, 180, 182, 184, 186, 188, 190, 192, 194, 196, 198, 200, 202, 204, 206, 208, 210, 212, 214, 216, 218, 220, 222, 224, 226, 228, 230, 232, 234, 236, 238, 240, 242, 244, 246, 248, 250, 252, 254, 256, 258, 260, 262, 264, 266, 268, 270, 272, 274, 276, 278, 280, 282, 284, 286, 288, 290, 292, 294, 296, 298, 300, 302, 304, 306, 308, 310, 312, 314, 316, 318, 320, 322, 324, 326, 328, 330, 332, 334, 336, 338, 340, 342, 344, 346, 348, 350, 352, 354, 356, 358, 360, 362, 364, 366, 368, 370, 372, 374, 376, 378, 380, 382, 384, 386, 388, 390, 392, 394, 396, 398, 400, 402, 404, 406, 408, 410, 412, 414, 416, 418, 420, 422, 424, 426, 428, 430, 432, 434, 436, 438, 440, 442, 444, 446, 448, 450, 452, 454, 456, 458, 460, 462, 464, 466, 468, 470, 472, 474, 476, 478, 480, 482, 484, 486, 488, 490, 492, 494, 496, 498, 500]

1-500中所有偶数的和是: 62750

######################################################################

[1, 3, 5, 7, 9, 11, 13, 15, 17, 19, 21, 23, 25, 27, 29, 31, 33, 35, 37, 39, 41, 43, 45, 47, 49, 51, 53, 55, 57, 59, 61, 63, 65, 67, 69, 71, 73, 75, 77, 79, 81, 83, 85, 87, 89, 91, 93, 95, 97, 99, 101, 103, 105, 107, 109, 111, 113, 115, 117, 119, 121, 123, 125, 127, 129, 131, 133, 135, 137, 139, 141, 143, 145, 147, 149, 151, 153, 155, 157, 159, 161, 163, 165, 167, 169, 171, 173, 175, 177, 179, 181, 183, 185, 187, 189, 191, 193, 195, 197, 199, 201, 203, 205, 207, 209, 211, 213, 215, 217, 219, 221, 223, 225, 227, 229, 231, 233, 235, 237, 239, 241, 243, 245, 247, 249, 251, 253, 255, 257, 259, 261, 263, 265, 267, 269, 271, 273, 275, 277, 279, 281, 283, 285, 287, 289, 291, 293, 295, 297, 299, 301, 303, 305, 307, 309, 311, 313, 315, 317, 319, 321, 323, 325, 327, 329, 331, 333, 335, 337, 339, 341, 343, 345, 347, 349, 351, 353, 355, 357, 359, 361, 363, 365, 367, 369, 371, 373, 375, 377, 379, 381, 383, 385, 387, 389, 391, 393, 395, 397, 399, 401, 403, 405, 407, 409, 411, 413, 415, 417, 419, 421, 423, 425, 427, 429, 431, 433, 435, 437, 439, 441, 443, 445, 447, 449, 451, 453, 455, 457, 459, 461, 463, 465, 467, 469, 471, 473, 475, 477, 479, 481, 483, 485, 487, 489, 491, 493, 495, 497, 499]

1-500中所有奇数的和是: 62500

3. 求1+ 2! + 3! + 4! + ……20!的和(扩展:输出每个数的阶乘及和)

print('**********方法一:for循环**********')
x=0
s1=0
for i in range(1,22):
    if i==1:
         x=1
    else:
       x*=(i-1)
       s1+=x
       print str(i-1) + '的阶乘是:', x, '和是:', s1
print('\n**********方法二:while循环**********')
y=1
s2=0
a=1
while a<22:
    if a==1:
        y=a
        a+=1
    else:
       y*=(a-1)
       s2+=y
       a+=1
       print str(a-2) + '的阶乘是:', y, '和是:', s2

**********方法一:for循环**********

1的阶乘是: 1 和是: 1

2的阶乘是: 2 和是: 3

3的阶乘是: 6 和是: 9

4的阶乘是: 24 和是: 33

5的阶乘是: 120 和是: 153

6的阶乘是: 720 和是: 873

7的阶乘是: 5040 和是: 5913

8的阶乘是: 40320 和是: 46233

9的阶乘是: 362880 和是: 409113

10的阶乘是: 3628800 和是: 4037913

11的阶乘是: 39916800 和是: 43954713

12的阶乘是: 479001600 和是: 522956313

13的阶乘是: 6227020800 和是: 6749977113

14的阶乘是: 87178291200 和是: 93928268313

15的阶乘是: 1307674368000 和是: 1401602636313

16的阶乘是: 20922789888000 和是: 22324392524313

17的阶乘是: 355687428096000 和是: 378011820620313

18的阶乘是: 6402373705728000 和是: 6780385526348313

19的阶乘是: 121645100408832000 和是: 128425485935180313

20的阶乘是: 2432902008176640000 和是: 2561327494111820313

**********方法二:while循环**********

1的阶乘是: 1 和是: 1

2的阶乘是: 2 和是: 3

3的阶乘是: 6 和是: 9

4的阶乘是: 24 和是: 33

5的阶乘是: 120 和是: 153

6的阶乘是: 720 和是: 873

7的阶乘是: 5040 和是: 5913

8的阶乘是: 40320 和是: 46233

9的阶乘是: 362880 和是: 409113

10的阶乘是: 3628800 和是: 4037913

11的阶乘是: 39916800 和是: 43954713

12的阶乘是: 479001600 和是: 522956313

13的阶乘是: 6227020800 和是: 6749977113

14的阶乘是: 87178291200 和是: 93928268313

15的阶乘是: 1307674368000 和是: 1401602636313

16的阶乘是: 20922789888000 和是: 22324392524313

17的阶乘是: 355687428096000 和是: 378011820620313

18的阶乘是: 6402373705728000 和是: 6780385526348313

19的阶乘是: 121645100408832000 和是: 128425485935180313

20的阶乘是: 2432902008176640000 和是: 2561327494111820313

4. 对指定一个list进行排序[2,32,43,453,54,6,576,5,7,6,8,78,7,89]

L1=[2,32,43,453,54,6,576,5,7,6,8,78,7,89]
print('**********方法一:sort()排序**********')
print '按数字的大小正常排序'
L1.sort()
print L1
print '按数字的大小反转排序'
L1.sort(reverse=True)
print L1
print('**********方法二:sorted()排序**********')
print(sorted(L1))

**********方法一:sort()排序**********

按数字的大小正常排序

[2, 5, 6, 6, 7, 7, 8, 32, 43, 54, 78, 89, 453, 576]

按数字的大小反转排序

[576, 453, 89, 78, 54, 43, 32, 8, 7, 7, 6, 6, 5, 2]

**********方法二:sorted()排序**********

[2, 5, 6, 6, 7, 7, 8, 32, 43, 54, 78, 89, 453, 576]

备注:sorted(list)返回一个对象,可以用作表达式。原来的list不变,生成一个新的排好序的list对象;list.sort() 不会返回对象,改变原有的list。

5. 复习字典排序,字符串, list, tuple常用方法

d1={'python':1,'C#':2,'C++':3,'Java':4,'Php':5}
print '**********按key值对字典进行排序**********'
print(sorted(d1))
print(sorted(d1.keys()))
print(sorted(d1.keys(),reverse=True))
a=d1.items()
a.sort()
for key,value in a:
    print key,value
print '**********按value值对字典进行排序,这里需要引进lambda表达式,将以items()中的第二个元素,即value
的大小进行排序**********'
print(d1.items())
print(sorted(d1.items(),key=lambda item:item[1]))

**********按key值对字典进行排序**********

['C#', 'C++', 'Java', 'Php', 'python']

['C#', 'C++', 'Java', 'Php', 'python']

['python', 'Php', 'Java', 'C++', 'C#']

C# 2

C++ 3

Java 4

Php 5

python 1

**********按value值对字典进行排序,这里需要引进lambda表达式,将以items()中的第二个元素,即value的大小进行排序**********

[('python', 1), ('C#', 2), ('Php', 5), ('Java', 4), ('C++', 3)]

[('python', 1), ('C#', 2), ('C++', 3), ('Java', 4), ('Php', 5)]