if 练习:
1、求平均成绩
- 输入学生姓名;
- 依次输入学生的三门科目成绩;
- 计算该学生的平均成绩, 并打印;
- 平均成绩保留一位小数点;
- 计算该学生语文成绩占总成绩的百分之多少?并打印。eg: 78%;
name = raw_input('请输入学生姓名:')
Chinese = float(raw_input('请输入该学生的语文成绩:'))
Math = float(raw_input('请输入该学生的数学成绩:'))
English = float(raw_input('请输入该学生的英语成绩:'))
average = (Chinese+Math+English)/3
print '该学生的平均成绩为 % .1f' % average
precent = Chinese/(Chinese+Math+English)
print '该学生语文成绩占总成绩的% .f%%' % (precent * 100)
2、判断是否为闰年?
- 用户输入年份year, 判断是否为闰年?
- year能被4整除但是不能被100整除 或者 year能被400整除, 那么就是闰年;
year = int(raw_input("Year:"))
if (year % 4 == 0 and year % 100 != 0) or ( year % 400 == 0):
print("%s是闰年" %(year))
else:
print("%s不是闰年" %(year))
3、输入年、月,输出本月有多少天。合理选择分支语句完成设计任务。
-输入样例1:2016 2
-输出结果1:本月29天
year = int(raw_input('请输入年份:'))
month = int(raw_input('请输入月份:'))
if (month == 1 or month == 3 or month == 5 or month == 7
or month == 8 or month == 10 or month == 12):
print '31天'
elif month == 4 or month == 6 or month == 9 or month == 11:
print '30天'
elif month == 2 and year%4==0 and year%100!=0 or year%400==0:
print '29天'
else:
print '28天'
import random
# 1.从控制台输入要出的拳(石头1/剪刀2/布3)
player = int(raw_input('请输入您要出的拳:石头1/剪刀2/布3:'))
# 2.电脑出拳
computer = random.randint(1,3)
print computer
# 3.比较胜负
"""
石头胜剪刀
剪刀胜布
布胜石头
"""
if ((player == 1 and computer == 2)
or (player == 2 and computer == 3) \
or (player == 3 and computer == 1)):
print '玩家胜利了~'
elif player == computer:
print '平局'
else:
print '玩家输了~'
while 练习:
1、
(1)、0~100之间所有数字的累积求和
i = 0
sum = 0
while i <= 100:
sum+=i
i +=1
print '0~100的和为%d' % sum
i = 0
sum = 0
while i<=100:
if i % 2 == 0:
sum += i
i += 1
print '0~100之间偶数求和为 %d' % sum
i = 0
sum = 0
while i<=100:
if i % 2 != 0:
sum += i
i += 1
print '0~100之间奇数求和为 %d' % sum
2、在控制台连续输出五行*,每一行星号的数量依次递增
row = 1
while row <= 5:
col = 1
while col <= row:
print '*', # 按要求打印星星 如果不加星星会换行最后结果 只有一列星星
col += 1
print ' ' # 换行 如果不加则所有的星星打印在一行
row += 1
row = 1
while row <= 9:
col = 1
while col <= row:
print '%d * %d = %d\t' % (row, col, col * row),
col += 1
# print '%d' % row
print ''
row += 1
1. 系统随机生成一个1~100的数字;
2. 用户总共有5次猜数字的机会;
3. 如果用户猜测的数字大于系统给出的数字,打印“too big”;
4. 如果用户猜测的数字小于系统给出的数字,打印"too small";
5. 如果用户猜测的数字等于系统给出的数字,打印"恭喜",并且退出循环;
import random
computer = random.randint(1,100)
print '系统数字为:%d'% computer
i = 0
while i<5:
user = int(raw_input('请输入用户数字:'))
if user > computer:
print 'too big'
elif user < computer:
print 'too small'
else:
print '恭喜'
break
i += 1
for i in range(3):
name = raw_input('用户名:')
passwd = raw_input('密码:')
if name == 'root' and passwd == 'westos':
print '登陆成功'
else:
print '登陆失败'
print '您还剩下%d 次机会' % (2-i)
else:
print '机会已经用完,请您等待100s再次登陆系统'
6、break 实现命令行提示符雏形
import os
while True:
cmd = raw_input('[kiosk@test ~]$')
if cmd:
if cmd == 'exit':
print 'logout'
break
#print 'hello'
else:
print 'run %s' % cmd
# 运行shell命令
os.system(cmd)
else:
continue
#print 'hello'
sum1 = 0
for i in range(2,101,2):
sum1 += i
sum2 = 0
for j in range(1,101,2):
sum2 += j
print '1~100之间所有偶数之和为: %d ,1~100之间所有奇数之和为:%d' % (sum1,sum2)
num = int(raw_input('请输入一个整数:'))
result = num
for i in range(1, num):
result *= (num - i)
print '阶乘结果为:%d' % result
num = int(raw_input('Num:'))
res = 1
for i in range(1,num+1): # num:3 rang(1,4)== 1,2,3
res = res * i
print '%d 的结果是:%d' %(num,res)
num1 = int(raw_input('Num1:'))
num2 = int(raw_input('Num2:'))
min_num = min(num1, num2)
for i in range(1, min_num + 1):
if num1 % i == 0 and num2 % i == 0:
# 当循环结束,保存最大公约数
gys = i
lcm = (num1 * num2)/gys
print '%s和%s的最大公约数为%s' %(num1,num2,gys)
print '%s和%s的最小公倍数为%s' %(num1,num2,lcm)
num = raw_input('Num:')
if num == num[::-1]:
print '这是一个回文数'
else:
print '这不是一个回文数'
2、变量是否合法?
变量名可以由字母,数字或者下划线组成;
变量名只能以字母或者下划线开头;
s = “hello@”
1. 判断变量名的第一个元素是否为字母或者下划线; s[0]
2. 如果第一个元素符合条件, 判断除了第一个元素的其他元素;s[1:]
while True:
s = raw_input('变量名:')
if s == 'exit':
print '欢迎再次使用'
break
if s[0].isalpha() or s[0] == '_':
for i in s[1:]:
if not (i.isalnum() or i == '_'):
print '%s变量名不合法 ' % s
break
else:
print '%s 变量名合法' % s
else:
print '%s变量名不合法' % s
3、输入一行字符,统计其中有多少个单词,每两个单词之间以空格隔开。
如输入: This is a c++ program. 输出:There are 5 words in the line.
a = raw_input('请输入一行英文字符:')
li = a.split()
b = len(li)
print 'There are %d words in the line' % b
4、 给出一个字符串,在程序中赋初值为一个句子,例如”he threw three free throws”,
自编函数完成下面的功能:
1)求出字符列表中字符的个数(对于例句,输出为26)
a = raw_input('请输入一行字符:')
b = len(a)
print '%d' % b
![这里写图片描述](https://img-blog.csdn.net/20180828173034627?watermark/2/text/aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzM3MDQ4NTA0/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70)
5、给定一个字符串来代表一个学生的出勤纪录,这个纪录仅包含以下三个字符:
'A' : Absent,缺勤
'L' : Late,迟到
'P' : Present,到场
如果一个学生的出勤纪录中不超过一个'A'(缺勤)并且不超过两个连续的'L'(迟到),
那么这个学生会被奖赏。
你需要根据这个学生的出勤纪录判断他是否会被奖赏。
示例 1:
输入: "PPALLP"
输出: True
示例 2:
输入: "PPALLL"
输出: False
s = raw_input()
if s.count(‘A’) <= 1 and s.count(‘LLL’) ==0:
print True
else:
print False
“`