12月 3 日
1、使用while循环输入 1 2 3 4 5 6 8 9 10
for i in range(1,10):if i == 7:print(" ",end="")else:print("%d"%i,end="")
2、求1-100的所有数的和
1 for i in range(1,101):2 if i <100:3 j = j+i4 else:5 print(i+j)
3、输出 1-100 内的所有奇数,输出 1-100 内的所有偶数
j =0
k=0for i in range(1,101):if i%2 ==0:
j= j+ielse:
k= k+iprint("所有奇数和为%d,偶数和为%d"%(k,j))
4、求1-2+3-4+5 ... 99的所有数的和
#求1-2+3-4+5...99的所有数的和
defmain():
j=0
i=0while i < 100:if i%2 == 1:
j= j+ielse:
j= j-i
i= i+1
print("1-2+3-4+...+99的和为%d"%j)if __name__ == '__main__':
main()
5、用户登陆(三次机会重试)
1 username = "liuming"
2 password = 123456
3 i =04 while i < 3:5 i += 1
6 user_name = input("请输入你的名称:")7 if user_name ==username:8 pass_word = input("请输入你的密码:")9 if int(pass_word) ==password:10 print("登录成功")11 break
12 else:13 print("密码输入错误,请重新输入")14 if i == 3:15 print("登录超过3次,请明天再试")16 else:17 print("用户名不存在")18 if i == 3:19 print("登录超过3次,请明天再试")
12月4日1.判断下列逻辑语句的True和False
(1) 1 > 1 or 3 < 4 or 4 > 5 and 2 > 1 and 9 > 8 or 7 < 6
(2) not 2 > 1 and 3 < 4 or 4 > 5 and 2 > 1 and 9 > 8 or 7 < 6
(3) 1 > 2 and 3 < 4 or 4 > 5 and 2 > 1 or 9 < 8 and 4> 6 or 3 <2
2.求出下列逻辑语句的值
(1) 8 or 3 and 4 or 2 and 0 or 9 and 7
(2) 0 or 2 and 3 and 4 or 6 and 0 or 3
(3) 5 and 9 or 10 and 2 or 3 and 5 or 4 or 5
3.下列结果是什么?
x or y,若x为真,则返回x.若x为假,y为真,则返回y.若x和y都为假,返回y
x and y,若x为真,y也为真,则返回y.y为假,则返回y.若x为假,则返回x.
(1) 6 or 2 > 1
(2) 3 or 2 > 1
(3) 0 or 5 < 4
(4) 5 < 4 or 3
(5) 2 > 1 or 6
(6) 3 and 2 > 1
(7) 0 and 3 > 1
(8) 2 > 1 and 3
(9) 3 > 1 and 0
(10) 3 > 1 and 2 or 2 < 3 and 3 and 4 or 3 >2
4.简述变量命名规范
"""
变量要以数字、下划线或者字母任意组合,且不能以数字开头;
不能以关键字命名;
一般不以中文以及汉字拼音命名;
常量一般全部是大写;
命名要有意义,不宜过长。
"""
5.name = input (">>>")name变量是什么数据类型?
"""
使用input,从键盘上输入的值都将变为字符串类型。
"""6.if条件语句的基本结构?
"""
if xxx:
xxx
elif xxx:
xxx
else:
xxx
"""
7.while循环语句基本结构?
"""
while 条件判断:
执行语句
"""
8.计算1-2+3...+99中除了88以外所有数的和?
i = 1sum=0while i < 100:if i == 88:
i+= 1
continue
elif i%2 !=0:
sum= sum +ielse:
sum= sum -i
i+= 1
print(sum)
9.用户登录(3次输错机会)且每次输错误时显示剩余错误次数(使用字符串格式化)
username = "liuming"password= "123456"i= 3
while i>=0:
name= input("用户名:")
i-= 1
if i ==0:print("你的机会已经用完")break
if name ==username:
passwd= input("密码:")if passwd ==password:print("登录成功")else:print("密码错误,请重新输入,你还有%s次机会"%i)continue
else:print("用户名错误,请重新输入,你还有%s次机会"%i)
10.简述 ascii unicode utf-8编码关系?
"""
ascii 只能显示英文,特殊字符,数字。
万国码:unicode 最开始16位,中文不够32位 4个字节。占用资源多。
升级:utf-8 utf-16 utf-32
utf-8:最少用一个字节,8位表示一个英文。欧洲16位,两个字节。亚洲 24位,三个字节。
gbk:中国国产,只能用于中文和ascii码中的文字,一个中文用两个字节表示。
"""
11.简述位和字节的关系?
"""
位:二进制位(bit)是计算机存储信息的基本单位,代表1个二进制数位,其值为0或1。
字节:8个连续的二进制位为一个字节,可以存放1个西文字符的编码。
"""
12."老男孩" 使用utf-8编码占用几个字节?使用gbk编码占用几个字节?
"""
“老男孩”使用UTF-8编码占用9个字节
“老男孩”使用GBK编码占用6个字节
"""
13.制作趣味模板程序需求:等待用户输入名字、地点、爱好,根据用户的名字和爱好进行任意显示 如:敬爱可亲的xxx,最喜欢在什么地方干xxx.
"""
name = input('请输入姓名:')
place = input('喜欢的地点:')
hobby = input('你的爱好:')
tem = '敬爱可亲的%s,最喜欢在%s地方干%s'%(name, place ,hobby)
print(tem)
"""
14. 等待用户输入内容,检测用户输入内容中是否包含敏感字符?如果存在敏感字符提示“存在敏感字符请重新输入”,并允许用户重新输入并打印。敏感字符:“小粉嫩”、“大铁锤”
whileTrue:
msg= input("请输入内容:")if msg == "小粉嫩" or msg == "大铁锤":print("存在敏感字符,请重新输入")else:break
15. 单行注释以及多行注释?
"""
单行注释:#
多行注释:""" """
"""
16. 简述你所知道的Python3和Python2的区别?
"""
Python2:源码杂而乱,且有重复内容,违背了Python的宗旨。默认编码方式是ASCII码,读取中文时会乱码
Python3:遵循“优雅,明确,简单”,默认编码方式是utf-8,读取中文时不会乱码
"""
17. 看代码书写结果:
"""
a = 1>2 or 4<7 and 8 == 8
print(a)
结果:True
"""
18. continue 和 break 的区别?
"""
continue:结束本次循环,继续下一次的循环;
break:直接跳出循环。
"""
19. 看代码书写结果:
"""
a = 12 and 127
print(a)
结果:127
"""
12月5日
1,有变量name = "aleX leNb" 完成如下操作:
""" title() -->首字母大写,其余小写
strip() -->删除字母两边的空格 lstrip -->删除左边空格 rstrip -->删除右边空格
1) 移除name 变量对应的值两边的空格,并输出处理结果
print(name.strip())
2) 移除name变量左边的"al"并输出处理结果
print(name[2:])
3) 移除name变量右面的"Nb",并输出处理结果
print(name[0:-2]
4) 移除name变量开头的a"与最后的"b",并输出处理结果
print(name[1,-1])
5) 判断 name 变量是否以 "al" 开头,并输出结果
if name[0:2] == "al":
print("yes")
else:
print("no")
6) 判断name变量是否以"Nb"结尾,并输出结果
使用 name[-2:]
7) 将 name 变量对应的值中的 所有的"l" 替换为 "p",并输出结果
print(name.replace("l","p"))
8) 将name变量对应的值中的第一个"l"替换成"p",并输出结果
print(name.replace("l","p",1))
9) 将 name 变量对应的值根据 所有的"l" 分割,并输出结果。
print(name.split("l"))
10) 将name变量对应的值根据第一个"l"分割,并输出结果。
print(name.split("l",1))
11) 将 name 变量对应的值变大写,并输出结果
print(name.upper())
12) 将 name 变量对应的值变小写,并输出结果
print(name.lower())
13) 将name变量对应的值首字母"a"大写,并输出结果
print(name.capitalize())
14) 判断name变量对应的值字母"l"出现几次,并输出结果
print(name.count("l"))
15) 如果判断name变量对应的值前四位"l"出现几次,并输出结果
print(name.count("l",0,4))
16) 从name变量对应的值中找到"N"对应的索引(如果找不到则报错),并输出结果
print(name.find("N",0,))
17) 从name变量对应的值中找到"N"对应的索引(如果找不到则返回-1)输出结果
print(name.index("N",0,))
18) 从name变量对应的值中找到"X le"对应的索引,并输出结果
print(name.find('X le'))
19) 请输出 name 变量对应的值的第 2 个字符?
print(name[1])
20) 请输出 name 变量对应的值的前 3 个字符?
print(name[0:3])
21) 请输出 name 变量对应的值的后 2 个字符?
print(name[-3:-1])
22) 请输出 name 变量对应的值中 "e" 所在索引位置?
print(name.find('e')
2,有字符串s = "123a4b5c"
1)通过对s切片形成新的字符串s1,s1 = "123"
2)通过对s切片形成新的字符串s2,s2 = "a4b"
3)通过对s切片形成新的字符串s3,s3 = "1345"
4)通过对s切片形成字符串s4,s4 = "2ab"
5)通过对s切片形成字符串s5,s5 = "c"
6)通过对s切片形成字符串s6,s6 = "ba2"
s = "123a4b5c"
print(s[0:3])
print(s[3:6])
print(s[0::2])
print(s[1:-1:2])
print(s[-1:])
# 这里的-2 是指:从右往左数,
s6 = s[-3::-2]
print("s6 = " + s6)
3,使用while和for循环分别打印字符串s="asdfer"中每个元素。
s="asdfer"
for i in s:
print(i,end=" ")
j = 0
while j
print(s[j],end=" ")
j += 1
if j == len(s):
break
4,使用for循环对s="asdfer"进行循环,但是每次打印的内容都是"asdfer"。
for i in s:
print(i,end="") # end=""不换行且没间隔
5,使用for循环对s="abcdefg"进行循环,每次打印的内容是每个字符加上sb, 例如:asb, bsb,csb,...gsb。
for i in s:
print(i+"sb")
6,使用for循环对s="321"进行循环,打印的内容依次是:"倒计时3秒","倒计时2秒","倒计时1秒","出发!"。
s = "321"
for i in s:
print("倒计时%s秒" % i)
if int(i) == 1:
print("出发")
break
7,实现一个整数加法计算器(两个数相加):
如:content = input("请输入内容:") 用户输入:5+9或5+ 9或5 + 9,然后进行分割再进行计算。
content = input("请输入内容:")
index = content.find("+") #查看+号的索引值,如果没有,返回-1
k1 = int(content[0:index])
k2 = int(content[index+1:])
print(k1+k2)
8,升级题:实现一个整数加法计算器(多个数相加):
如:content = input("请输入内容:") 用户输入:5+9+6 +12+ 13,然后进行分割再进行计算。
list = input("请输入内容:").split("+")
sum = 0
for i in list:
sum = sum+int(i)
print(sum)
9,计算用户输入的内容中有几个整数(以个位数为单位)。
如:content = input("请输入内容:") # 如fhdal234slfh98769fjdla
content = input("请输入内容:")
count = 0
for i in content:
if i.isdigit(): #判断i是否为整数
count += 1
print(count)
10、写代码,完成下列需求:
用户可持续输入(用while循环),用户使用的情况:
输入A,则显示走大路回家,然后在让用户进一步选择:
是选择公交车,还是步行?
选择公交车,显示10分钟到家,并退出整个程序。
选择步行,显示20分钟到家,并退出整个程序。
输入B,则显示走小路回家,并退出整个程序。
输入C,则显示绕道回家,然后在让用户进一步选择:
是选择游戏厅玩会,还是网吧?
选择游戏厅,则显示 "一个半小时到家,爸爸在家,拿棍等你。’并让其重新输入A,B,C选项。
选择网吧,则显示"两个小时到家,妈妈已做好了战斗准备。’并让其重新输入A,B,C选项。
while True:
content = input("请输入你要执行的操作:A-走大路,B-走小路,C-绕道回家:")
if content == "A":
print("走回去")
msg = input("请输入你的回家方式,公交车-1,步行-2:")
if msg == "1":
print("10分钟到家")
break
else:
print("20分钟到家")
break
elif content == "B":
print("走小路回家")
break
elif content == "C":
print("绕道回家")
msg_num02 = input("请输入你的选择,游戏厅-2,网吧-1:")
if msg_num02 == "1":
print('两个小时到家,妈妈已做好了战斗准备。')
continue
else:
print("一个半小时到家,爸爸在家,拿棍等你。")
continue
else:
print("你输入错误,请重新输入")
习题来自网上找到的老男孩python日常习题,都是我在pycharm上敲的,本人自学,习题会继续更新,接收大家批评教育,谢谢。