码迷,mamicode.com
首页 > 其他好文 > 详细

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

时间:2017-09-14 12:00:04      阅读:189      评论:0      收藏:0      [点我收藏+]

标签:speed   ges   ==   logs   end   alt   定义   .com   澳门   

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

1、用循环画五角星

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

技术分享

 

2、用循环画同心圆

from turtle import*
for i in range(5):
    up()
    goto(0,-20*(i))
    down()
    circle(20*i)

技术分享

3、用wlile循环画太阳花

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

技术分享

4、用函数定义画五个五角星

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)

技术分享

5、用函数定义画钻石花瓣的太阳花

from turtle import *
color("red")
speed(10)

def a ():
    forward(100)
    left(45)
    forward(100)
    left(135)

for i in range(36):
    a()
    a()
    right(10)

pensize(10)
right(90)
forward(400)

技术分享

 

二、字符串操作

1、输入学号,识别年级、专业、序号

n = input("请输入学号:")
#201406114430
print("年级为:{}级".format(n[2:4]))
print("专业为:{}".format(n[4:10]))
print("学号为:{}号".format(n[10:]))

 技术分享

2、输入1-7的数字,输出对应的“星期几”

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

技术分享

 

3、识别身份证号中的省市区、年龄、性别

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)

技术分享

 

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

标签:speed   ges   ==   logs   end   alt   定义   .com   澳门   

原文地址:http://www.cnblogs.com/16bytes/p/7519703.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!