作业:条件、循环、函数定义、字符串操作练习

1、注意标准库的两种导入与使用方式,建议大家采用<库名>.<函数名>的方式。

2、对前面的代码进行优化,用for,while,if,def实现:

a.用循环画五角星

运行代码: 

from turtle import*
color("red")
fillcolor("red")
begin_fill()
while True:
forward(200)
right(144)
if abs(pos())<1:
break
end_fill()

运行结果:

b.用循环画同心圆

运行代码:

 import turtle

for i in range(5):
turtle.up()
turtle.goto(0,-20*(i+1))
turtle.down()
turtle.circle(20*(i+1))

运行结果:

c.用while循环画太阳花

 运行代码:

from turtle import *
color('red','yellow')
begin_fill()
while True:
forward(200)
left(170)
if(abs(pos()))<1:
break
end_fill()
done()

 运行结果:

d.用函数定义画五个五角星

运行代码:

from turtle import *
setup(600,400,0,0)
color("yellow")
bgcolor("red")
fillcolor("yellow")
def point(x,y):
    up()
    goto(x,y)
    down()    
def star(r):
    begin_fill()
    for i in range(5):
        forward(r)
        right(144)
    end_fill()
point(-250,95)
star(90)
point(-150,180)
star(40)
point(-100,130)
star(40)
point(-100,50)
star(40)
point(-150,0)
star(40)

 运行结果:

e.用函数定义画钻石花瓣的太阳花

运行代码:

from turtle import *
def draw_prismatic():
for i in range(1,3):
forward(100)
right(45)
forward(100)
right(135)

def draw_Diamond_Flower():

speed(10)
color('red','yellow')
begin_fill()
for i in range(36):
draw_prismatic()
right(10)
end_fill() 

draw_Diamond_Flower()

 运行结果:

3、字符串操作

a.输入学号,识别年级、专业、序号。

 运行代码:

number=input("请输入你的学号")
print("你的学号为%s"%number)
print("你的年级为:",number[0:4])
if int(number[8:10])==44:
    print("网络工程二班")
else:
    print("输入有误")
print("序号为:",number[10:12])
运行结果:

b.输入1-7的数字,输出对应的“星期几”。

 运行代码:

s = "星期一星期二星期三星期四星期五星期六星期日"
n =int(input("请输入数字(1-7):"))
if (0 < n <8):
print(s[((n-1)*3):(n*3)])
else :
print("输入错误")

运行结果:

 

c.识别身份证号中的省市区、年龄、性别。

运行代码: 

import time
provinces = {
11:'北京市',
12:'天津市',
13:'河北省',
14:'山西省',
15:'内蒙古自治区',
21:'辽宁省',
22:'吉林省',
23:'黑龙江省',
31:'上海市',
32:'江苏省',
33:'浙江省',
34:'安徽省',
35:'福建省',
36:'江西省',
37:'山东省',
41:'河南省',
42:'湖北省',
43:'湖南省',
44:'广东省',
45:'广西壮族自治区',
46:'海南省',
50:'重庆市',
51:'四川省',
52:'贵州省',
53:'云南省',
54:'西藏自治区',
61:'陕西省',
62:'甘肃省',
63:'青海省',
64:'宁夏回族自治区',
65:'新疆维吾尔自治区',
71:'台湾省',
81:'香港特别行政区',
91:'澳门特别行政区'
}
def decide(cardID):
province=cardID[0:2]
birthdayYear=cardID[6:10]
localYear=time.strftime('%Y')
age=int(localYear)-int(birthdayYear)
sex=cardID[16:17]
print("省份为:", provinces.get(int(province)))
print("年龄为:{}".format(age))
if int(sex)%2==0:
print("性别:女")
else:
print("性别,男")
cardID=input("请输入身份证号:")
decide(cardID)

运行结果:

 

d.用字符串操作生成python文档各库的网址(起始网址在这里https://docs.python.org/3.6/library/index.html)

运行代码: 

a="https://docs.python.org/3.6/library/index"
b=".html"
address=a+b
print(address)

运行结果:

e.练习字符串的+,*,in,len(),eval()

posted @ 2017-09-14 15:34  07袁志灵  阅读(217)  评论(0编辑  收藏  举报