python 100例 (持续更新)

1、题目:列表转换为字典。

程序源代码:

  1 #!/usr/bin/env python
  2 # -*- coding: UTF-8 -*-
  3 
  4 i = ['a', 'b']
  5 l = [1, 2]
  6 print dict([i, l])
                    

以上实例输出结果为:

{'a': 'b', 1: 2}

 

2、一个简单的while循环

  1 #!/usr/bin/env python
  2 
  3 count = 0
  4 while (count < 9):
  5     print 'The count is:', count
  6     count = count + 1
  7 
  8     print "good bye"

 以上实例输出的结果为:

The count is: 0
The count is: 1
The count is: 2
The count is: 3
The count is: 4
The count is: 5
The count is: 6
The count is: 7
The count is: 8
good bye

 

3、一个简单的循环continue

  1 #!/usr/bin/env python
  2 i = 1
  3 while i < 10:
  4     i += 1
  5     if i%2 > 0:
  6         continue
  7     print i

以上实例输出的结果为:

2
4
6
8
10

 

4、break的用法

  1 #!/usr/bin/env python 
  2 i = 1
  3 while 1:
  4    print i
  5    i += 1
  6    if i > 10:
  7         break

 以上实例的实验结果为:

1
2
3
4
5
6
7
8
9
10

 

5、 一个无限循环的小例子

  1 #!/usr/bin/python
  2 # -*- coding: UTF-8 -*-
  3 
  4 var = 1
  5 while var == 1: # 该条件永远为true,循环将无限执行下去
  6     num = raw_input("Enter a number:")
  7     print "You entered:", num
  8 
  9 print "Good bye!"
                    

 以上实例输出结果(使用ctrl + c 推出无限循环):

Enter a number:5
You entered: 5
Enter a number:6
You entered: 6
Enter a number:^CTraceback (most recent call last):
  File "wuxian.py", line 6, in <module>
    num = raw_input("Enter a number:")
KeyboardInterrupt

 

6、循环使用else😁

  1 #!/usr/bin/env python 
  2 
  3 count = 0
  4 while count < 5:
  5     print count, " is less than  5"
  6     count = count + 1
  7 else:
  8     print count, " is not less than 5"
                                             

以上实例结果

0  is less than  5
1  is less than  5
2  is less than  5
3  is less than  5
4  is less than  5
5  is not less than 5

 

7、题目:输入某年某月某日,判断这一天是这一年的第几天?

    程序分析:以3月5日为例,应该先把前两个月的加起来,然后再加上5天即本年的第几天,特殊情况,闰年且输入月份大于3时需考虑多加一天:

    程序源代码:

  

  1 #!/usr/bin/python
  2 # -*- coding: UTF-8 -*-
  3 
  4 year = int(raw_input('year: '))
  5 month = int(raw_input('month: '))
  6 day = int(raw_input('day: '))
  7 
  8 months = (0,31,59,90,120,151,181,212,243,273,304,334)
  9 if 0 < month <= 12:
 10     sum = months[month - 1]
 11 else:
 12     print 'data error'
 13 sum += day
 14 leap = 0
 15 if (year % 400 == 0) or ((year % 4 == 0) and (year % 100 != 0)): #能被400或者4整除,但不能被100整除是闰年
 16     leap = 1
 17 if (leap == 1) and (month > 2):
 18     sum += 1
 19 print 'it is the %dth day of this year.' % sum
                                                   

 以上实例的输出结果:

year: 2016
month: 11
day: 2
it is the 307th day of this year.

 

8、题目:输入三个整数x,y,z,请把这三个数由小到大输出。

     程序分析:我们想办法把最小的数放到x上,先将x与y进行比较,如果x>y则将x与y的值进行交换,然后再用x与z进行比较,如果x>z则将x与z的值进行交换,这样能使x最小。

     程序源代码:

  1 #!/usr/bin/python 
  2 # -*- coding: UTF-8 -*-
  3 
  4 l = []
  5 for i in range(3):
  6     x = int(raw_input('integer: '))
  7     l.append(x)
  8 l.sort()
  9 print l

   以上实例的输出结果:

 

integer: 4
integer: 7
integer: 1
[1, 4, 7]

 

9、题目:将一个列表的数据复制到另一个列表中。😁

程序分析:使用列表[:]。

程序源代码:

  1 #!/usr/bin/python
  2 # -*- coding: UTF-8 -*-
  3 
  4 a = [1, 2, 3]
  5 b = a[:]
  6 print b

以上实例输出结果为:

[1, 2, 3]

 

10、题目:输出9*9乘法口诀表。

程序分析:分行与列考虑,共9行9列,i控制行,j控制列。

程序源代码:

  1 #!/usr/bin/python
  2 # -*- coding: UTF-8 -*-
  3 
  4 for i in range(1,2):
  5     for j in range(1,10):
  6         result = i * j
  7         print '%d * %d = % -3d' % (i,j,result)
  8     print ''

以上实例的结果:🙄

1 * 1 =  1 
1 * 2 =  2 
1 * 3 =  3 
1 * 4 =  4 
1 * 5 =  5 
1 * 6 =  6 
1 * 7 =  7 
1 * 8 =  8 
1 * 9 =  9 

 

11、python的标准输出

  1 #!/usr/bin/env python
  2 # _*_ coding:utf-8 _*_
  3 name=input("name: ")
  4 age=int(input("age: "))
  5 job=input("job: ")
  6 salary=float(input("salary:"))
  7 info2='''
  8     ==================info of {_name}=================
  9     name:{_name}
 10     age:{_age}
 11     job:{_job}
 12     salary:{_salary}    
 13     ==================================================
 14 '''.format(_name=name,
 15            _age=age,
 16            _job=job,
 17            _salary=salary)
 18 print(info2)
            

 

12、一个python输入密码的小程序,在输入密码时,为了使密码不可见,可以条用getpass模块的getpass()方法。

  1 #!/usr/bin/env python
  2 # _*_ coding:utf-8 _*_
  3 import getpass
  4 user =raw_input("请输入用户名:")
  5 pwd=getpass.getpass("请输入密码:")
  6 print(user, pwd)
               

 以上实例的输出结果:

# python passwd.py 
请输入用户名:wangtao
请输入密码:
('wangtao', '123456')

 

13、使用sys模块的小例子

  1 #!/usr/bin/env python
  2 from sys import argv
  3 print argv
               

以上实例的输出结果:

# python argvtest.py  1 2 3 4 5
['argvtest.py', '1', '2', '3', '4', '5']

 

14、猜数字的小游戏

  1 #!/usr/bin/env python
  2 # _*_ coding:utf-8 _*_
  3 
  4 time=0
  5 real_age=23
  6 while time<3:
  7     guess_age=int(raw_input("请猜猜我的真实年龄,请输入猜测的年龄:"))
  8     if guess_age==real_age:
  9         print("哈哈,你真聪明猜对了!")
 10         break
 11     elif guess_age>real_age:
 12         print("数字太大了,请猜小一点!")
 13     else:
 14         print("数字有些小,请猜大一点!")
 15     time += 1
 16     if time==3:
 17         continue_flag = raw_input("还要继续往下猜吗?(yes or no)")
 18         if continue_flag == "y":
 19             time=0
 20         else:
 21             print("退出系统!\n")
 22             break

 

以上实例的输出结果:

# python guess_agetest.py 
请猜猜我的真实年龄,请输入猜测的年龄:35
数字太大了,请猜小一点!
请猜猜我的真实年龄,请输入猜测的年龄:232
数字太大了,请猜小一点!
请猜猜我的真实年龄,请输入猜测的年龄:34
数字太大了,请猜小一点!
还要继续往下猜吗?(yes or no)y
请猜猜我的真实年龄,请输入猜测的年龄:12
数字有些小,请猜大一点!
请猜猜我的真实年龄,请输入猜测的年龄:23
哈哈,你真聪明猜对了!

 

15、for循环的小例子

#!/usr/bin/env python
# _*_ coding:utf8 _*_
#author:snate
for i in range(0,10,3):
   print("loop",i)
   if i>=6:
      break

 以上实例的输出结果为:

# python for.py
('loop', 0)
('loop', 3)
('loop', 6)

 

16、显示目录文件

>>> import subprocess
>>> subprocess.call(["ls","-l","/tmp/"])
total 84
-rw-r--r-- 1 root root  1702 Feb 24 10:44 6379.conf
-r--r--r-- 1 root root 74812 Oct 25 10:53 cronie-1.4.4-12.el6.x86_64.rpm
drwxr-xr-x 2 root root  4096 Feb 24 16:46 hsperfdata_root

 

17. python包装ls命令

#!/usr/bin/env python 
#python wrapper for the ls command

import subprocess
subprocess.call(["ls","-l","/tmp"])

 

18. 显示系统信息脚本

#!/usr/bin/env python 
# A system information gathering script
import subprocess
#command 1
uname = "uname"
uname_arg = "-a"
print "Gathering system information with %s command:\n" % uname
subprocess.call([uname, uname_arg])

#command 2
diskspace = "df"
diskspace_arg = "-h"
print "Gathing diskspace information %s command:\n" % diskspace
subprocess.call([diskspace,diskspace_arg])

 

posted @ 2016-10-26 23:27  子非木  阅读(3706)  评论(0编辑  收藏  举报