1. 程式人生 > >條件、循環、函數定義、字符串操作練習

條件、循環、函數定義、字符串操作練習

專業 山西 pan 北京市 字符串 ima 澳門 images 寧夏

一、對前面的代碼進行優化,用for,while,if,def實現

1、用循環畫五角星

1 from turtle import *
2 for i in range(5):
3     forward(100)
4     right(144)

輸出結果:

技術分享

2、用循環畫同心圓

1 from turtle import *
2 for i in range(4):
3      pu()
4      goto(0,-(i+1)*10)
5      pd()
6      circle((i+1)*10)

輸出結果:

技術分享

3、用wlile循環畫太陽花

1 color(red,yellow
) 2 begin_fill() 3 while True: 4 forward(200) 5 left(170) 6 if(abs(pos()))<1: 7 break 8 end_fill() 9 done()

輸出結果:

技術分享

4、用函數定義畫五個五角星

 1 from turtle import *
 2 def huanwei(x,y):
 3     pu()
 4     goto(x,y)
 5     pd()
 6     
 7 def wujiaoxing():
 8     for i in range(5):
 9         forward(100)
10 right(144) 11 12 for i in range(5): 13 huanwei(-(i*100),0) 14 wujiaoxing()

輸出結果:

技術分享

5、用函數定義畫鉆石花瓣的太陽花

 1 from turtle import *
 2 def draw_lx():
 3     for i in range(1,3):
 4         forward(100)
 5         right(45)
 6         forward(100)
 7         right(135)
 8 
 9 def draw_zsh():
10
speed(10) 11 color(red,yellow) 12 begin_fill() 13 for i in range(36): 14 draw_lx() 15 right(10) 16 end_fill() 17 18 draw_zsh()

輸出結果:

技術分享

二、字符串操作

1、輸入學號,識別年級、專業、序號。

 1 def shibie(studentID):
 2     if len(studentID)<12:
 3         print("請輸入正確的學號!")
 4     elif studentID.isdigit() != True:
 5         print("請輸入正確的學號!")
 6     else:
 7         grade = studentID[0:4]
 8         profession = studentID[4:8]
 9         order = studentID[10:12]
10         print("年級:{}級".format(grade))
11         if profession == "0611":
12             print("專業:網絡工程")
13         print("序號:{}".format(order))
14 
15 studentID = input("請輸入學號:")
16 shibie(studentID)

輸出結果:

1 請輸入學號:201406114347
2 年級:2014級
3 專業:網絡工程
4 序號:47
5 >>> 
6 請輸入學號:123
7 請輸入正確的學號!

2、輸入1-7的數字,輸出對應的“星期幾”。

 1 def xq(xqj):
 2     xqj = int(xqj)
 3     if 0<xqj<8:
 4         str = "星期一星期二星期三星期四星期五星期六星期日"
 5         xq = str[(xqj-1)*3:(xqj-1)*3+3]
 6         print("{} 是 {}".format(xqj,xq))
 7     else:
 8         print("請輸入正確數字!")
 9 
10 xqj = input("輸入1-7的數字:")
11 xq(xqj)

輸出結果:

1 輸入1-7的數字:2
2 2 是 星期二
3 >>> 
4 輸入1-7的數字:10
5 請輸入正確數字!

3、識別身份證號中的省市區、年齡、性別。

 1 import time
 2 
 3 #省份對應字典
 4 provinces = {
 5     11:北京市,
 6     12:天津市,
 7     13:河北省,
 8     14:山西省,
 9     15:內蒙古自治區,
10     21:遼寧省,
11     22:吉林省,
12     23:黑龍江省,
13     31:上海市,
14     32:江蘇省,
15     33:浙江省,
16     34:安徽省,
17     35:福建省,
18     36:江西省,
19     37:山東省,
20     41:河南省,
21     42:湖北省,
22     43:湖南省,
23     44:廣東省,
24     45:廣西壯族自治區,
25     46:海南省,
26     50:重慶市,
27     51:四川省,
28     52:貴州省,
29     53:雲南省,
30     54:西藏自治區,
31     61:陜西省,
32     62:甘肅省,
33     63:青海省,
34     64:寧夏回族自治區,
35     65:新疆維吾爾自治區,
36     71:臺灣省,
37     81:香港特別行政區,
38     91:澳門特別行政區
39 }
40 
41 def shibie(IDcard):
42     province = IDcard[0:2]
43     birthYear = IDcard[6:10]
44     localYear = time.strftime(%Y)
45     age = int(localYear) - int(birthYear)
46     sex = IDcard[16:17]
47     print("省份為:",provinces.get(int(province)))
48     print("年齡為:{}".format(age))
49     if int(sex) % 2 == 0:
50         print("性別:女")
51     else:
52         print("性別:男")
53 
54 IDcard = input("請輸入身份證:")
55 shibie(IDcard)

條件、循環、函數定義、字符串操作練習