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

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
turtle.color('red')
for i in range(4):
    turtle.up()
    turtle.goto(0,-40*(i+1))
    turtle.down()
    turtle.circle(40*(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、用函数定义画五个五角星

import turtle
turtle.setup(600,400,0,0)
turtle.bgcolor("red")
turtle.color("yellow")
turtle.fillcolor("yellow")
def z_goto(x,y):
    turtle.up()
    turtle.goto(x,y)
    turtle.down()
def z_draw(m,n):
    turtle.begin_fill()
    for i in range(5):
        turtle.forward(m)
        turtle.left(n)
    turtle.end_fill()
    
z_goto(-270,120)
z_draw(100,-144)

z_goto(-140,150)
turtle.left(10)
z_draw(30,144)

z_goto(-100,110)
turtle.right(18)
z_draw(30,144)

z_goto(-100,60)
turtle.left(10)
z_draw(30,-144)

z_goto(-135,10)
turtle.left(10)
z_draw(30,144)

效果图:

 

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

import turtle
turtle.color("yellow")
turtle.fillcolor("red")
turtle.begin_fill()
def draw(t):
   t.fd(80)
   t.right(45)
   t.fd(80)
   t.right(135)
for i in range(36):
    draw(turtle)
    draw(turtle)
    turtle.left(10)
turtle.end_fill()

 

2、字符串操作

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

sid=input("学号是:")
g=sid[2:4]
p=sid[4:8]
t=sid[-2:]
print("年级:{}级".format(g))
if p=="0611":
  print("专业:网络工程")
print("序号:{}".format(t))

 

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

s = "星期一星期二星期三星期四星期五星期六星期日"
i = int(eval(input("请输入1-7的数字:")))
if(i>7):
  print("输入的数字为无效数字")
print(s[3*(i-1):3*i])

 

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

id = input("请输入身份证号:")
if len(id)!=18:
    print("无效身份证!")
    exit(0)
else:
    address=int(id[0:6])
    year=int(id[6:10])
    sex=int(id[17])
if address==440000:
    print("省市区为:广东省")
elif address==440100:
    print("省市区为:广东省广州市")
elif address==440101:
    print("省市区为:广东省广州市市辖区")
elif address==440102:
    print("省市区为:广东省广州市东山区")
elif address==440103:
    print("省市区为:广东省广州市荔湾区")
elif address==440104:
    print("省市区为:广东省广州市越秀区")
elif address==440105:
    print("省市区为:广东省广州市海珠区")
elif address==440106:
    print("省市区为:广东省广州市天河区")
elif address==440107:
    print("省市区为:广东省广州市芳村区")
elif address==440111:
    print("省市区为:广东省广州市白云区")
elif address==440112:
    print("省市区为:广东省广州市黄埔区")
elif address==440181:
    print("省市区为:广东省广州市番禺区")
elif address==440182:
    print("省市区为:广东省广州市花都区")
elif address==440183:
    print("省市区为:广东省广州市增城区")
elif address==440184:
    print("省市区为:广东省广州市从化区")
else:
    print("无法查到信息!")#不在广东省广州市内的
    exit(0)
if sex%2==0:
    print("性别为:女性")
else:
    print("性别为:男性")
print("您今年%d"%(2017-year)+"")

 

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

i="https://docs.python.org/3.6/library/index"
j=".html"
add=i+j
print(add)

 

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

 

posted @ 2017-09-14 21:06  11+陈泽廷  阅读(176)  评论(0编辑  收藏  举报