python 语言程序设计基础-第1章-程序设计基本方法
第一例:根据圆的半径计算圆的面积
>>> radius=25 #半径radius
>>> area=3.1415*radius*radius #面积area
>>> print(area)
1963.4375000000002
>>> print("{:.2f}".format(area)) #只输出两位小数
1963.44
操作过程中出现的错误以及解决方法如下:
>>> print("{:.2f}".format(area))
File "<stdin>", line 1
print("{:.2f}".format(area))
^
SyntaxError: invalid character ')' (U+FF09) #错误:括号的输入法为中文
第二例:简单的人名对话
>>> name=input("输入名字:") #输出字符串函数——input()
输入名字:陈一二
>>> print("{}同学".format(name))
陈一二同学
>>> print("{}大侠".format(name[0]))#{}为名字首位
陈大侠
>>> print("{}哥哥".format(name[1:]))#{}为名字第一位的后面
一二哥哥
>>> print("{}弟弟".format(name[2:]))#}为名字第二位的后面
二弟弟
操作过程中出现的错误以及解决方法如下:
>>> name=input("输入名字:")
输入名字:陈一二
>>> print("{}同学",format(name[0]))
{}同学 陈 #错误:缺失 print("{}同学".format(name))
第三例:斐波那契数列
>>> a,b=0,1
>>> while a<1000: #while循环条件为 a<1000
... print(a,end=',')#每个a的后面加一个,
... a,b=b,a+b # 我们平时用缩进只要长度一致,在程序内一致即可,一般用4个空格或TAB
...
0,1,1,2,3,5,8,13,21,34,55,89,144,233,377,610,987,>>>
操作过程中出现的错误以及解决方法如下:
>>> a,b=0,1
>>> while a<1000:
... print(a,end=',') #错误:while循环内无缩进
File "<stdin>", line 2
print(a,end=',')
^
IndentationError: expected an indented block after 'while' statement on line 1
>>> a,b=0,1
>>> while a<1000:
... print(a,end',')
File "<stdin>", line 2
print(a,end',') #错误:漏了“=”
^^^
SyntaxError: invalid syntax
第四例:同切圆的绘制
>>> import turtle #绘图的python函数库——turtle
>>> turtle.pensize(2) #设置画笔宽度
>>> turtle.circle(10) #绘制半径为()的圆
>>> turtle.circle(40)
>>> turtle.circle(80)
>>> turtle.circle(160)
操作过程中出现的错误以及解决方法如下:
>>> import turtle
>>> turtle.pensize(2)
>>> turtle.circle(10)
Traceback (most recent call last):
File "<stdin>", line 1, in <module> #错误:关闭了绘图窗口
File "<string>", line 5, in circle
turtle.Terminator
>>> turtle.circle(40)
>>> turtle.circle(80)
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "<string>", line 5, in circle
turtle.Terminator
>>> turtle.circle(160)
第五例:日期和时间的输出
>>> from datetime import datetime #获得系统日期和时间的python函数库——datetime
>>> now = datetime.now()
>>> print(now)
2023-09-22 07:48:34.491156
>>> now.strftime("%x") #其中日期部分为小x
'09/22/23'
>>> now.strftime("%X") #其中时间部分为大X
'07:48:34'
操作过程中出现的错误以及解决方法如下:
>>> from datetime import datetime
>>> now = datetime.now()
>>> print(now)
2023-09-22 07:48:34.491156
>>> now.strftime("%x")
'09/22/23'
>>> now.strftime("%x") #错误:输出时间用了小x
'09/22/23'
第六例:字符串拼接
>>> str1=input("请输入一个人的名字:") #字符串输入
请输入一个人的名字:张三
>>> str2=input("请输入一个国家名字:")
请输入一个国家名字:中国
>>> print("世界这么大,{}想去{}看看。".format(str1,str2))
世界这么大,张三想去中国看看。
第七例:整数序列求和
n=input(" 请输入整数n:")
sum=0
for i in range(int(n)):
sum += i+1
print("1到n求和结果:",sum)#脚本式正常运行,交互式出现错误
操作过程中出现的错误以及解决方法如下:
n=input("请输出整数N:")
请输出整数N:10
>>> sum=0
>>> for i in rang(int(n)):
... sum +=i +1
... print("1到N求和结果:",sum)
File "<stdin>", line 3
print("1到N求和结果:",sum) #一些版本问题,交互不行
^^^^^
SyntaxError: invalid syntax
>>> print("1到N求和结果:",sum)
File "<stdin>", line 1
print("1到N求和结果:",sum)
IndentationError: unexpected indent
>>> print("1到N求和结果:",sum)
File "<stdin>", line 1
print("1到N求和结果:",sum)
^
SyntaxError: invalid character ',' (U+FF0C)
>>> print("1到N求和结果:",sum)
1到N求和结果: 0
第八例:九九乘法表输出
>>> for i in range(1,10):
... for j in range(1,i+1):
... print("{}*{}={:2}".format(j,i,i*j),end='')#添加空格
... print('')
...
1*1= 1
1*2= 22*2= 4
1*3= 32*3= 63*3= 9
1*4= 42*4= 83*4=124*4=16
1*5= 52*5=103*5=154*5=205*5=25
1*6= 62*6=123*6=184*6=245*6=306*6=36
1*7= 72*7=143*7=214*7=285*7=356*7=427*7=49
1*8= 82*8=163*8=244*8=325*8=406*8=487*8=568*8=64
1*9= 92*9=183*9=274*9=365*9=456*9=547*9=638*9=729*9=81
第九例:阶乘求和
sum, tmp = 0, 1
for i in range(1,11):
tmp*=i
sum+=tmp
print("运算结果是: {}".format(sum))#脚本式正常运行,交互式出现错误
=============================== RESTART: D:/15.py ==============================
运算结果是: 4037913
操作过程中出现的错误以及解决方法如下:
>>> sum, tmp = 0,1
>>> for i in rang(1,11):
... tmp*=i
... sum+=tmp
... print("运算结果是:{}".format(sum))
File "<stdin>", line 4
print("运算结果是:{}".format(sum))#和第七例一样,未解决错误
^^^^^
SyntaxError: invalid syntax
第十例:猴子吃桃
(求第一天共摘多少桃子,第一天吃了一半加一个桃,…,第五天早上剩一个桃)?
n=1
for i in range(4,0,-1):
n=(n+1)<<1
print(n)
============================== RESTART: D:/123.py ==============================
46
第十一例:健康食谱输出
(5种食材,两两组合)
diet=['西红柿','花椰菜','黄瓜','牛排','虾仁']
for x in range(0,5):
for y in range(0,5):
if not(x==y): #排除相同食材组成的菜式
print("{}{}".format(diet[x],diet[y]))
============================== RESTART: D:/123.py ==============================
西红柿花椰菜
西红柿黄瓜
西红柿牛排
西红柿虾仁
花椰菜西红柿
花椰菜黄瓜
花椰菜牛排
花椰菜虾仁
黄瓜西红柿
黄瓜花椰菜
黄瓜牛排
黄瓜虾仁
牛排西红柿
牛排花椰菜
牛排黄瓜
牛排虾仁
虾仁西红柿
虾仁花椰菜
虾仁黄瓜
虾仁牛排
range函数怎么用?
第十二例:五角星的绘制
from turtle import *
fillcolor("red")
begin_fill()
while True:
forward(200)
right(144)
if abs(pos()) < 1:
break
end_fill()
第十三例:太阳花的绘制
from turtle import*
color('red','yellow')
begin_fill()
while True:
forward(200)
left(170)
if abs(pos()) < 1:
break
end_fill()
done()
注:该篇是本人(计算机小白)学习python的笔记,出现错误请仔细指出。