第1课 神奇的笔
import turtle #导入海龟
kkk = turtle.Turtle() #制作画笔
kkk.color("red") #将画笔颜色设定为红色
kkk.forward(100) #画一条长度为100的线
kkk.left(120) #左转120
kkk.color("blue")#将颜色设定为蓝色
kkk.forward(100)#画长度为100的线
kkk.left(120)#左转120
kkk.color("green")#将颜色设定为绿色
kkk.forward(100)#
kkk.left(120)
kkk.color("yellow")
kkk.left(120)
kkk.forward(100)
kkk.color("purple")
kkk.right(120)
kkk.forward(100)
第2课 Python绘制简易几何图形
import turtle
t=turtle.Turtle()
t.speed(5)
t.pensize(20)#将画笔的粗细设定为20
t.circle(100)画一个半径为100的⚪
t.color("red")
t.circle(90)
t.color("grey")
t.circle(80)
t.color("pink")
t.circle(70)
t.color("yellow")
t.circle(60)
t.color("green")
t.circle(50)
t.color("orange")
t.circle(40)
t.color("skyblue")
t.circle(30)
t.color("puple")
t.circle(20)
t.color("violet")
t.circle(10)
第3课 阳光微笑
import turtle
t=turtle.Turtle()
t.shape=turtle
t.speed(2)
t.color('yellow')
t.penup()
t.goto(-80,90)
t.pendown()
t.begin_fill()
t.circle(22)
t.end_fill()
t.color('yellow')
t.penup()
t.goto(80,90)
t.pendown()
t.begin_fill()
t.circle(22)
t.end_fill()
t.penup()
t.goto(0,70)
t.pendown()
t.color('brown')
t.begin_fill()
t.circle(-50,steps=3)
t.end_fill()
t.penup()
t.goto(0,-120)
t.pendown()
t.pensize(6)
t.color('blue')
t.circle(165)
t.penup()
t.goto(50,-50)
t.pendown()
t.right(90)
t.color('red')
t.pensize(7)
t.circle(-50,180)
第4课 螺旋风叶
import turtle
t = turtle.Turtle()
t.speed(0)
t.color("red")
for y in range(15):
for x in range(4):
t.circle(y*8)
t.right(90)
t.left(5)
第5课 正方螺旋
import turtle
t=turtle.Turtle()
t.speed(0)
c=['red','blue','green','yellow']
for x in range(4):
t.color(c[x%4])
t.begin_fill()#开始填充
t.circle(50,steps=3)#将50半径的圆内切3次
t.end_fill()#结束填充
t.left(90)
第6课 画爱心
import turtle
t=turtle.Turtle()
t.penup()
t.goto(-20,0)
t.pendown()
t.color('red')
t.write('静夜思',font=('楷体',30,'bold'))
t.penup()
t.goto(-100,-50)
t.pendown()
t.color('green')
t.write('床前明月光,疑是地上霜',font=('楷体',20,'bold'))
t.penup()
t.goto(-100,-90)
t.pendown()
t.color('blue')
t.write('举头望明月,低头思故乡',font=('楷体',20,'bold'))
第7课 太阳花
import random
import turtle
t=turtle.Turtle()
t.speed(0)
a=random.randint(1,50)
t.penup()
t.goto(a,a)
t.pendown()
print(a)
c=['red','orange','yellow','green','skyblue','blue','purple']
for x in range(101):
t.color(c[x%7])
if x%2==0:
t.left(190)
else:
t.left(100)
t.fd(100)
第8课 梦幻气泡
#登陆系统
import random
a='Eddie'#准备账号
b=19#准备密码
c=input ('请输入账号:')#所以账号不需要转化类型,本身就是字符串
if a==c:
print('账号正确,请输入密码')
d=int(input('请输入密码:'))#7788
if b==d:
print('恭喜您登陆成功')
else:
print('密码错误,请重新输入')
#猜数字游戏
e=random.randint(1,7)#准备一个答案
f=int(input('请输入一个1-7之间的数字:'))#将字符串类型转化成了整型
if e==f:
print('恭喜你猜对了')
else:
print('很遗憾,猜错了')
第9课 图形组合
import random
a=0
b=0
while True:
s1=random.randint(1,6)
s2=random.randint(1,6)
s=s1+s2
if 4<s<10:
a+=1
else:
b+=1
if a==100:
print('awin')
break
if b==100:
print('bwin')
break
第10课 彩色螺旋
import turtle
t=turtle.Turtle()
t.speed(0)
c=['red','blue','orange','green']
for x in range(90):
t.color(c[x%4])
t.circle(100)
t.left(10)
第11课 多彩组合图形
import turtle
import random
t=turtle.Turtle()
t.speed(0)
num=int(input('请输入次数'))
r=int(input('请输入半径'))
c=['green','orange','yellow','blue']#颜色有绿,橘,黄,蓝
for x in range(num):
a=random.randint(-220,110)
b=random.randint(-200,220)
t.color(c[x%4])#随机取4种颜色
t.penup() #落笔
t.goto(a,b)
t.begin_fill()
f=x%3
if f==0:
t.circle(r)
elif f==1:
t.circle(r,steps=3)
elif f==2:
for y in range(5):
t.fd(r)
t.left(144)
t.end_fill()
第12课 海龟跑圈
import turtle
t=turtle.Turtle()
t.hideturtle()
t.penup()#抬笔
t.goto(-50,-50)#移动到-50
t.pendown()#落笔
t.color('red')#将颜色设定为红色
t.width(20)
t.fd(100)#画一条长100米的线
t.circle(50,180)#画一个半径为50的园
t.fd(100)#画一条长100米的线
t.circle(50,180)
t1=turtle.Turtle()
t1.color('green')
t1.shape('turtle')
t1.penup()
t1.goto(-50,-50)
num=int(input('请输入圈数'))
for x in range(num):
print('当前是第'+str(x+1)+'圈')
t1.fd(100)
t1.circle(50,180)
t1.fd(100)
t1.circle(50,180)
第13课 九九乘法表
for x in range(10):
s=''
for x in range(x):
s=s+'*'
print(s)
第14课 123数字黑洞
s='python'
for x in range(len(s)):
print(s[x])
第15课 骰子赛车
import random #导入随机库
a=0 #a从0开始
b=0 #b从0开始
while True: #导入while无限循环
s1=random.randint(1,6)#生成1到6之间的正数
s2=random.randint(1,6)#生成1到6之间的正数
s=s1+s2
if 4<s<10:
a+=1
else:
b+=1
if a==100:
print('awin')
break
if b==100:
print('bwin')
break
第16课 扑克游戏之洗牌
import random#导入随机库
types=['♥','♠','♦','♣']
nums=['A','2','3','4','5','6','7','8','9','10','J','Q','K']#创造A2345678910JQK
cards=[]#创造一个空盒子
for i in range(4):
for j in range(13):
card=types[i]+nums[j]
cards.append(card)#将牌追加到牌盒中
random.shuffle(cards)
print(cards)#打印出牌盒
第17课 扑克游戏之发牌
"""
一幅扑克52张牌,4个玩家,每人13张牌,已经被拿到的牌,不允许第二个人重复
"""
import random
num = ['A', '2', '3', '4', '5', '6', '7', '8', '9', '10', 'J', 'Q', 'K'] # 创造一个A2345678910JQK
types = ['♠', '♥', '♦', '♣']
cards = [] # 该列表存放所有的纸牌
for i in types:
for j in num:
cards.append(i + j)
random.shuffle(cards) # 将纸牌列表全部打乱
print(cards)#打印
'''
player1=[]
for x in range(0,52,4):
player1.append(cards[x])
print('玩家1的牌为',player1)
player2=[]
for x in range(1,52,4):
player2.append(cards[x])
print('玩家2的牌为',player2)
player3=[]
for x in range(2,52,4):
player3.append(cards[x])
print('玩家3的牌为',player3)
player4=[]
for x in range(3,52,4):
player4.append(cards[x])
print('玩家4的牌为',player4)
'''
for i in range(0,4,1):
L=[]
for j in range(0,52,4):
L.append(cards[j+i])
print('玩家',i+1,'的牌为:',L)
第18课 花色游戏PK
#=================================================洗牌
import random
num = ['A', '2', '3', '4', '5', '6', '7', '8', '9', '10', 'J', 'Q', 'K']#a2345678910jkq
types = ['♠', '♥', '♦', '♣']
cards = [] # 该列表存放所有的纸牌
for i in types:
for j in num:
cards.append(i + j)
random.shuffle(cards) # 将纸牌列表全部打乱
print(cards)
print("=============================================")
#===================================================发牌
player = [ [], [], [], [] ]玩家的牌盒
for y in range(4):
for x in range(y,52,4):
player[y].append(cards[x])
print( "玩家" + str(y) + "的牌为:" + str(player[y]) )#打印玩家的牌
print("=============================================")
#=============
res=types[random.randint(0,3)]
print('包含',res,'玩家会获胜')
for z in range(4):
rdc=player[z][random.randint(0,12)]
print('玩家获取的牌为:',rdc)
if rdc[0]==res:
print('win')
else:
print('lose')
第19课 海盗的宝藏
for ABC in range(100,1000):#重复执行899次
A=ABC//100 #a=abc正除100
BC=ABC%100 #bc=abc对100取余
B=BC//10 #b=bc正除10
C=BC%10 #c=bc取余10
if BC %16==0:
if ABC%13==0:
if A+B+C==11:
print(ABC)
第20课 巧解数字题
for x in range(0,10):
if x ==5:
print(x)
for ab in range(10,100):
a=ab//10
b=ab%10
if a+b==5:
print(ab)
for abc in range(100,1000):
a=abc//100
bc=abc%100
b=bc//10
c=bc%10
if a+b+c==5:
print(abc)
第21课 趣味自然数
for ab in range(10,100):
a=ab//10
b=ab%10
if ab==(a+b)+(a*b):
print(ab)
print('*********')
for x in range(10000):
n=str(x**2) #计算10000以内每一个数的乘积
m=str(x) #将x数字转化为字符串
c=len(m) #计算字符串m的长度
if x==int(n[-c::]): #[]代表字符串列表
#通过int将字符串转化为数字,n[开始值:结尾值:步长],负号代表反向
print(x)
第22课 哥德巴赫猜想
a=int(input('请输入一个数字'))
f='是質數'
for x in range(2,a):
if a%x==0:
f='不是質數'
break
print(str(a)+f)
第23课 扑克牌比赛
m=[23,45,77,21,88]
for x in range(4):
for y in range(4-x):
if m[y]>m[y+1]:
m[y],m[y+1]=m[y+1],m[y]
print(m)
第24课 斐波那契数列
s=[] #创建一个空列表
a=1
b=1
for x in range(20):#x取0~19(即前20个)个值,循环执行20次
s.append(a) #执行一次添加动作,将a的值添加到列表s中
a,b=b,a+b #执行2个赋值动作,分别将b的值赋给a,a+b的值赋给b
print(s)
第25课 蜗牛爬树
day=1
up=1
down=0.78
dis=0.22
while dis<=9.8:
day+=1 up=up*0.95 dis=dis+up if dis>9.8: break down=down*0.8 dis=dis-down print('爬行到树顶的天数为:%d'%day)
第26课 李白估酒
a=input('請輸入一個數字')
if a. isdigit():
print('是數字')
else:
print('不是數字')
第27课 狐狸找兔子
cave=0
cas=[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14]
for times in range(1000):
cave=(times+cave)%15
if cave in cas:
cas.remove(cave)
print('安全的洞穴为:',cas)
第28课 常青树
import turtle
t=turtle.Turtle()
t.pencolor('orange')
t.fillcolor('red')
t.begin_fill()
t.circle(50)
t.end_fill()
第29课 函数
import turtle
t = turtle.Turtle()
t.hideturtle()
t.pensize(4)
t.fillcolor("#955741")
t.penup()
t.goto(-15, 0)
t.pendown()
t.begin_fill()
t.forward(30)
t.right(90)
t.forward(50)
t.right(90)
t.forward(30)
t.right(90)
t.forward(50)
t.end_fill()
t.right(90)
t.fillcolor("#3d8442")
def draw_crown(x, y, w):
t.penup()
t.goto(x, y)
t.pendown()
t.begin_fill()
for i in range(3):
t.forward(w)
t.left(120)
t.end_fill()
draw_crown(-60, 0, 120)
draw_crown(-50, 40, 100)
第30课 五彩多边形
import turtle
t=turtle.Turtle()
def draw(c,s):
t.color(c)
t.begin_fill()
for i in range(s):
t.fd(50)
t.left(360/s)
t.end_fill()
c=input('请输入颜色 ')
s=int(input('请输入边数'))
draw(c,s)
第31课 海龟赛跑
import turtle
import random
t=turtle.Turtle()
t.speed(0) #添加速度
#准备场地
t.color('yellow')
t.up()
t.goto(-180,-60)
t.down()
t.begin_fill()
for x in range(2):
t.fd(360)
t.lt(90)
t.fd(120)
t.lt(90)
t.end_fill()
#分割线
t.up()
t.goto(-180,0)
t.down()
t.color('black')
t.pensize(3)
t.fd(360)
t.ht()
#第一只海龟
t1=turtle.Turtle()
t1.shape('turtle')
t1.color('green')
t1.up()
t1.goto(-180,30)
#第二只海龟
t2=turtle.Turtle()
t2.shape('turtle')
t2.color('red')
t2.up()
t2.goto(-180,-30)
#开始比赛
x=0 #绿海龟所跑次数
y=0 #红海龟所跑次数
while x<36 and y<36 : #说明两只海龟都没有到达终点
r=random.randint(0,1) #从0和1之间随机选出一个数字,0表示绿海龟 1表示红海龟
if r==0:
t1.fd(10) #前进10
x+=1 #绿海龟前进次数加1
else:
t2.fd(10)
y+=1 #红海龟前进次数加1
if x==36:
print('恭喜绿海龟赢了')
else:
print('哎呀,红海龟赢了')
百变常青树
'''
import turtle
class Tree:
s = 3
def set_side(self, s):
self.s = s
def draw_tree(self, x, y):
print(id(self))
t = turtle.Turtle()
t.hideturtle()
t.speed(0)
t.pensize(4)
t.fillcolor("#955741")
t.penup()
t.goto(x, y)
t.pendown()
t.begin_fill()
t.forward(90 / self.s)
t.right(90)
t.forward(150 / self.s)
t.right(90)
t.forward(90 / self.s)
t.right(90)
t.forward(150 / self.s)
t.end_fill()
t.right(90)
t.fillcolor("#3d8442")
t.penup()
t.goto(x - (135 / self.s), y)
t.pendown()
t.begin_fill()
for i in range(self.s):
t.forward(360 / self.s)
t.left(360 / self.s)
t.end_fill()
t.penup()
t.goto(x - (105 / self.s), y + 40)
t.pendown()
t.begin_fill()
for i in range(self.s):
t.forward(300 / self.s)
t.left(360 / self.s)
t.end_fill()
t.penup()
t.goto(x - (75 / self.s), y + 80)
t.pendown()
t.begin_fill()
for i in range(self.s):
t.forward(240 / self.s)
t.left(360 / self.s)
t.end_fill()
a1=Tree()
a1.set_side(5)
a1.draw_tree(-30,-40)
a2=Tree()
a2.set_side(8)
a2.draw_tree(100,-40)
a3=Tree()
a3.set_side(4)
a3.draw_tree(-160,-40)
a4=Tree()
a4.set_side(18)
a4.draw_tree(-80,-200)
'''
import turtle
t=turtle.Turtle()
t.speed(0)
t.begin_fill()
t.circle(80,180)
t.circle(40,180)
t.circle(-40,180)
t.end_fill()
t.circle(-80,180)
t.up()
t.goto(0,30)
t.down()
t.begin_fill()
t.circle(10)
t.end_fill()
t.up()
t.goto(0,110)
t.down()
t.color('white')
t.begin_fill()
t.circle(10)
t.end_fill()
t.ht()
来源:oschina
链接:https://my.oschina.net/u/4312211/blog/4338431