本节需要了解:
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-qAjlKHcI-1670290067758)(attachment:image.png)]
r=eval(input('请输入圆的半径:'))
S=3.14*r*r
C=2*3.14*r
print('圆的面积为:',round(S,2))
print('圆的周长为:',round(C,2))
请输入圆的半径:3
圆的面积为: 28.26
圆的周长为: 18.84
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-rrIJ1KwE-1670290067759)(attachment:image.png)]
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-rBgrUVsG-1670290067759)(attachment:image.png)]
# 赋值运算符的执行顺序从右到左
name='张三' # 将'张三'赋值给name
age=20 # 将20赋值给age
a=b=c=d=100 # 将a,b,c,d的值同时赋为100,链式赋值
name1,age1='李四',22 # 元组分解赋值
print(name1,age1)
[name2,age2]=['王五',30] # 列表分解赋值
print(name2,age2)
a,b,c,d='room' # 字符串分解赋值
print(a,b,c,d)
a,*b='room'# 扩展的解包赋值
print(a,b)
print('----------输入输出语句,也是典型的顺序结构--------------')
name=input('请输入您的姓名:')
age=eval(input('请输入您的年龄:'))
lucky_number=eval(input('请输入您的幸运数字:'))
print('姓名:',name)
print('年龄:',age)
print('幸运数字:',lucky_number)
李四 22
王五 30
r o o m
r ['o', 'o', 'm']
----------输入输出语句,也是典型的顺序结构--------------
请输入您的姓名:爱听歌的阿漓
请输入您的年龄:20
请输入您的幸运数字:2
姓名: 爱听歌的阿漓
年龄: 20
幸运数字: 2
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-2RBg9oIH-1670290067759)(attachment:image.png)]
number=eval(input('请输入您的六位中奖号码:'))
# 使用if语句
if number==123456:
print('恭喜您,中奖了!')
if number!=123456:
print('您与大奖擦肩而过!')
# 以上if判断的表达式,使用比较运算符,称为比较表达式
请输入您的六位中奖号码:123456
恭喜您,中奖了!
# 0的布尔值是False,非0的布尔值是True
n=98 # 赋值
if n%2: # 98%2 的余数为0
print(n,'为奇数')
if not n%2:
print(n,'为偶数')
98 为偶数
# 判断一个字符串是否为空字符串
# 空字符串的布尔值是False,非空字符串的布尔值是True
x=input('请输入一个字符串:')
if x:
print('x是非空字符串')
if not x:
print('x是空字符串')
请输入一个字符串:
x是空字符串
表达式也可以是一个单纯的变量
flag=eval(input('请输入一个布尔类型的值:True或False'))
if flag: # flag是一个布尔类型的变量,值为True或False
print('flag的值为True')
if not flag:
print('flag的值是False')
请输入一个布尔类型的值:True或False3>2
flag的值为True
# 使用if语句,如果语句只有一句代码,可以将语句直接写在冒号的后面
a=10
b=5
if a>b:max=a
print('a和b的最大值为:',max)
a和b的最大值为: 10
number=eval(input('请输入您的六位中奖号码:'))
if number==123456:
print('恭喜您中奖了!')
else:
print('很遗憾,大奖与您擦肩而过!')
请输入您的六位中奖号码:123456
恭喜您中奖了!
# number==123456为True时,将'恭喜您中奖了!'的值赋值给result,否则将'很遗憾,大奖与您擦肩而过!'赋值给result
number=eval(input('请输入您的六位中奖号码:'))
result='恭喜您中奖了!'if number==123456 else '很遗憾,大奖与您擦肩而过!'
print(result)
请输入您的六位中奖号码:123456
恭喜您中奖了!
score=eval(input('请输入你的成绩:'))
# 判断
if score<0 or score>=100:
print('成绩有误')
elif 0<=score<60:
print('E')
elif 60<=score<70:
print('D')
elif 70<=score<80:
print('C')
elif 80<=score<90:
print('B')
else:
print('A')
请输入你的成绩:55
E
answer=input('请问,您喝酒了么?y/n')
if answer=='y': # 代表喝酒了
proof=eval(input('请输入酒精含量:'))
if proof<20:
print('构不成酒驾,祝您一路平安')
elif proof<80:
print('已构成酒驾标准,请不要开车')
else:
print('已达到醉驾标准,请千万不要开车')
else:# 代表没喝酒
print('你走吧,没你啥事儿')
请问,您喝酒了么?y/ny
请输入酒精含量:12
构不成酒驾,祝您一路平安
and连接条件:需要同时满足多个条件
or连接条件:只需满足其中一个条件即可
user_name=input('请输入您的用户名:')
pwd=input('请输入您的密码:')
if user_name=='爱听歌的阿漓' and pwd=='123456':
print('登陆成功!')
else:
if user_name!='爱听歌的阿漓':
print('登录失败,用户名不正确!')
else:
print('登录失败,密码不正确!')
请输入您的用户名:爱听歌的阿漓
请输入您的密码:123456
登陆成功!
score=eval(input('请输入您的成绩:'))
if score<0 or score>100:
print('成绩无效')
else:
print('您的成绩为:',score)
请输入您的成绩:34
您的成绩为: 34
# 遍历字符串
for i in 'hello':
print(i)
h
e
l
l
o
产生一个[n,m)的有序数列
for i in range(1,11):
print(i,end=' ')
1 2 3 4 5 6 7 8 9 10
for i in range(1,11):
if i%2:
print(i,'是奇数')
else:
print(i,'是偶数')
1 是奇数
2 是偶数
3 是奇数
4 是偶数
5 是奇数
6 是偶数
7 是奇数
8 是偶数
9 是奇数
10 是偶数
# 计算1-10之间的累加和
sum=0 # 用于存储累加和
for i in range(1,11):
sum+=i
print('1-10的累加和:',sum)
1-10的累加和: 55
# 计算100-999之间的水仙花数
for i in range(100,1000):
sd=i%10
tens=i//10%10
hundred=i//100
if sd**3+tens**3+hundred**3==i:
print(i)
153
370
371
407
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-SfAegPur-1670290067760)(attachment:image.png)]
基本使用
# 计算1-10之间的累加和
sum=0 # 用于存储累加和
for i in range(1,11):
sum+=i
else:
print('1-10的累加和:',sum)
1-10的累加和: 55
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-4ng7tLZw-1670290067760)(attachment:image.png)]
answer=input('今天要上课么?y/n') # 1. 初始化变量
while answer=='y': # 2. 条件判断
print('好好学习,天天向上!') # 3. 循环体
answer=input('今天要上课么?y/n') # 4. 改变变量
今天要上课么?y/ny
好好学习,天天向上!
今天要上课么?y/ny
好好学习,天天向上!
今天要上课么?y/nn
# 求1-100之间的累加和
sum=0# 存储累加和
i=1 # 1. 初始化变量
while i<101: # 2. 条件判断
sum+=i # 3. 循环体
i+=1 # 4. 改变变量
print('1-100之间的累加和:',sum)
1-100之间的累加和: 5050
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-L8Uyl66b-1670290067760)(attachment:image.png)]
# 求1-100之间的累加和
sum=0# 存储累加和
i=1 # 1. 初始化变量
while i<101: # 2. 条件判断
sum+=i # 3. 循环体
i+=1 # 4. 改变变量
else:
print('1-100之间的累加和:',sum)
1-100之间的累加和: 5050
i=0 # 循环执行的次数
while i<3: # 0 1 2 当i=3时 3<3 False,循环结束
user_name=input('请输入您的用户名:')
pwd=input('请输入您的六位数密码:')
# 判断
if user_name=='爱听歌的阿漓' and pwd=='123456':
print('正在登录,请稍后!')
i=4
else:
if i<2:
print('用户名和密码不正确,您还有',2-i,'次机会')
i+=1
if i==3:
print('不好意思,三次均输入错误')
请输入您的用户名:爱听歌的阿漓
请输入您的六位数密码:123456
正在登录,请稍后!
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-UIl2TF5w-1670290067761)(attachment:image.png)]
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-U0FK2x7Y-1670290067761)(attachment:image.png)]
三行四列长方形
for i in range(1,4):
for j in range(1,5):
print('*',end='')
print()
****
****
****
直角三角形
for i in range(1,6):
for j in range(1,i+1):# 1-->1 2-->2
print('*',end='')
print()
*
**
***
****
*****
倒直角三角形
for i in range(1,6):
for j in range(1,7-i):
print('*',end='')
print()
*****
****
***
**
*
等腰直角三角形
for i in range(1,6):
for j in range(1,6-i):
print(' ',end='')
for k in range(1,i*2):# 1-->1 2-->3 3-->5
print('*',end='')
print()
*
***
*****
*******
*********
row=eval(input('请输入菱形的行数:'))
# 上半部分
top_row=(row+1)//2
while row%2==0:
print('重新输入菱形的行数')
row=eval(input('请输入菱形的行数:'))
for i in range(1,top_row+1):
for j in range(1,top_row+1-i):
print(' ',end='')
for k in range(1,i*2):# 1-->1 2-->3 3-->5
if k==1 or k==i*2-1:
print('*',end='')
else:
print(' ',end='')
print()
# 下半部分
bottom_row=row//2
for i in range(1,bottom_row+1):
for j in range(1,i+1):
print(' ',end='')
# print()
for k in range(1,2*bottom_row-2*i+2):
if k==1 or k==2*bottom_row-2*i+2-1:
print('*',end='')
else:
print(' ',end='')
print()
请输入菱形的行数:7
*
* *
* *
* *
* *
* *
*
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-W4XdzwPM-1670290067761)(attachment:image.png)]
sum=0
for i in range (1,100):
sum+=i
if sum>20:
print(i)
break
print(sum)
6
21
i=0
while i<3:
user_name=input('请输入用户名:')
pwd=input('请输入密码:')
if user_name=='lyl' and pwd=='888888':
print('系统正在登录,请稍后...')
break # 直接退出循环
else:
if i<2:
print('用户名或密码不正确,你还有',2-i,'次机会')
i+=1
else:
print('三次均输入错误!')
请输入用户名:lyl
请输入密码:888888
系统正在登录,请稍后...
user_name=input('请输入用户名:')
pwd=input('请输入密码:')
if user_name=='lyl' and pwd=='888888':
print('系统正在登录,请稍后...')
break # 直接退出循环
else:
if i<2:
print('用户名或密码不正确,你还有',2-i,'次机会')
i+=1
for i in range(0,3):
user_name=input('请输入用户名:')
pwd=input('请输入密码:')
if user_name=='lyl' and pwd=='888888':
print('系统正在登录,请稍后...')
break # 直接退出循环
else:
if i<2:
print('用户名或密码不正确,你还有',2-i,'次机会')
else:
print('三次均输入错误')
请输入用户名:lyl
请输入密码:3
用户名或密码不正确,你还有 2 次机会
请输入用户名:3
请输入密码:3
用户名或密码不正确,你还有 1 次机会
请输入用户名:3
请输入密码:3
三次均输入错误
arr=[]
for i in "hello":
arr.append(i)
print(arr)
['h', 'e', 'l', 'l', 'o']
# 计算1-100之间的偶数和
s=0
i=1
while i < 101:
if i%2==1:
i+=1
continue
s+=i
i+=1
print(s)
2550
# 判断所给出的年份是否为闰年
while True:
year = eval(input('请输入一个年份:>'))
if (year%4==0 and year %100!=0) or (year%400==0):
print(year,'年是闰年')
else:
print(year,'年是平年')
请输入一个年份:>200
200 年是平年
请输入一个年份:>2000
2000 年是闰年
---------------------------------------------------------------------------
KeyboardInterrupt Traceback (most recent call last)
in
1 # 判断所给出的年份是否为闰年
2 while True:
----> 3 year = eval(input('请输入一个年份:>'))
4 if (year%4==0 and year %100!=0) or (year%400==0):
5 print(year,'年是闰年')
D:\Anaconda3\lib\site-packages\ipykernel\kernelbase.py in raw_input(self, prompt)
858 "raw_input was called, but this frontend does not support input requests."
859 )
--> 860 return self._input_request(str(prompt),
861 self._parent_ident,
862 self._parent_header,
D:\Anaconda3\lib\site-packages\ipykernel\kernelbase.py in _input_request(self, prompt, ident, parent, password)
902 except KeyboardInterrupt:
903 # re-raise KeyboardInterrupt, to truncate traceback
--> 904 raise KeyboardInterrupt("Interrupted by user") from None
905 except Exception as e:
906 self.log.warning("Invalid Message:", exc_info=True)
KeyboardInterrupt: Interrupted by user
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-3gczIHYf-1670290067761)(attachment:image.png)]
while True:
print('---------欢迎使用10086查询功能---------\n'+
'1.查询当前余额\n'+
'2.显示当前的剩余流量\n'+
'3.显示当前剩余通话时长\n'+
'0.退出系统')
choose=eval(input('请输入您要执行的操作:'))
---------欢迎使用10086查询功能---------
1.查询当前余额
2.显示当前的剩余流量
3.显示当前剩余通话时长
0.退出系统
---------------------------------------------------------------------------
KeyboardInterrupt Traceback (most recent call last)
in
5 '3.显示当前剩余通话时长\n'+
6 '0.退出系统')
----> 7 choose=eval(input('请输入您要执行的操作:'))
D:\Anaconda3\lib\site-packages\ipykernel\kernelbase.py in raw_input(self, prompt)
858 "raw_input was called, but this frontend does not support input requests."
859 )
--> 860 return self._input_request(str(prompt),
861 self._parent_ident,
862 self._parent_header,
D:\Anaconda3\lib\site-packages\ipykernel\kernelbase.py in _input_request(self, prompt, ident, parent, password)
902 except KeyboardInterrupt:
903 # re-raise KeyboardInterrupt, to truncate traceback
--> 904 raise KeyboardInterrupt("Interrupted by user") from None
905 except Exception as e:
906 self.log.warning("Invalid Message:", exc_info=True)
KeyboardInterrupt: Interrupted by user
answer ='y'
while answer == 'y':
print('---------欢迎使用10086查询功能---------\n'+
'1.查询当前余额\n'+
'2.显示当前的剩余流量\n'+
'3.显示当前剩余通话时长\n'+
'0.退出系统')
choice=input('请输入您要执行的操作:')
if choice=='1':
print('当前余额为:234.5元')
elif choice=='2':
print('当前的剩余流量为4GB')
elif choice=='3':
print('当前剩余通话时长300分钟')
elif choice=='0':
print('退出')
break
else:
print('输入有误!请重新输入~')
answer=input('还要继续操作吗?y/n')
else:
print('程序退出,谢谢您的使用')
---------欢迎使用10086查询功能---------
1.查询当前余额
2.显示当前的剩余流量
3.显示当前剩余通话时长
0.退出系统
请输入您要执行的操作:1
当前余额为:234.5元
还要继续操作吗?y/nn
程序退出,谢谢您的使用
# 输出9*9乘法口诀表
for i in range(1,10):
for j in range(1,i+1):
print(str(j)+'*'+str(i)+'='+str(i*j),end=' ')
print()
1*1=1
1*2=2 2*2=4
1*3=3 2*3=6 3*3=9
1*4=4 2*4=8 3*4=12 4*4=16
1*5=5 2*5=10 3*5=15 4*5=20 5*5=25
1*6=6 2*6=12 3*6=18 4*6=24 5*6=30 6*6=36
1*7=7 2*7=14 3*7=21 4*7=28 5*7=35 6*7=42 7*7=49
1*8=8 2*8=16 3*8=24 4*8=32 5*8=40 6*8=48 7*8=56 8*8=64
1*9=9 2*9=18 3*9=27 4*9=36 5*9=45 6*9=54 7*9=63 8*9=72 9*9=81
for i in range(1,10):
for j in range(1,1+i):
print('*',end='')
print()
*
**
***
****
*****
******
*******
********
*********
import random
rand=random.randint(1,100)
count=1 # 记录猜的次数
while count<=3:
number=eval(input('在我心中有个数(1-100)请你猜一猜:'))
print('你还有'+str(3-count)+'次机会')
if number==rand:
print('猜对了')
break
elif number>rand:
print('猜大了')
count+=1
continue
elif number<rand:
print('猜小了')
count+=1
continue
if count==3:
print('您的次数已经用完')