python语法基础练习题
1. 分别解释"=","==","+="的含义(⼝述)
=为赋值语句,把⼀个变量值赋予另⼀个值
== 为条件判断,判断两个值是否相等
+= 为赋值 a+=1 意思就是a=a+1
2.两个变量值的关系?(⼝述)
n1 = 123456
n2 = n1
将123456赋予n1,然后将n1赋予n2, 意思就是n1 n2指向123456这个地址
3. 请写出 “战争热诚” 分别⽤ utf-8 和 gbk 编码所占的位数(⼝述)
⼀个中⽂⽤utf-8 表⽰占3字节 GBK占2字节
所以战争热诚⽤utf-8表⽰占12字节 GBK占8字节
其中12字节相当于96位 8字节64位
4. 简述Python中的⼏种数据类型(⼝述)
数据类型分为:基本类型、数据集。
基本类型包括:数字类型(整形、长整型、浮点型、复数)、字符串类型(⽂本str,字节bytes)、布尔类型(True/Fals)。数据集类型包括:列表、元祖、字典、集合。
总体来说,数据类型分为数字,字符串,列表,字典,元祖,布尔,集合
5. 数据类型的可变与不可变分别有哪些?(⼝述)
可变:字符串、列表、集合、字典value
不可变:数字、字符串、布尔、元祖、字典key
6.元祖,列表,字典有没有长度的限制?(⼝述)
没有,根据内存⼤⼩定义。
7. 解释'and','or','not'(⼝述)
和C语⾳的与或⾮类似,and,or,not都为逻辑运算符
and表⽰两者都为TRUE,则为TRUE
or表⽰两者有⼀个判断为布尔TRUE 则结果为TRUE 反之则False
not 表⽰取反如x为True,not x 则为False
8. 元组和列表的区别(⼝述)
元组⼜叫只读列表,不可改变,且⽆序。
元祖本⾝不可变,但是元祖中还包含其他可变元素,这些可变元素可以改变
列表有序,并且可以修改。
9.列举⼀堆布尔值为False的情况(⼝述)
空列表 [],
空字典{},
空元祖(),
空字符串“”
10.python2和python3对于long(长整形)的区别。
python2中有整形int和long,int 32位系统最多只有32位,超出32位则为long。64位系统为64位。
python3中全部为int。
long在python中没有指定位宽。
11.变量命名规范?(⼝述)
⾸字母不能是数字,并且变量名只能含有英⽂,数字,和下划线_
1.变量名只能是字母、数字或下划线的任意组合。
2.变量名的第⼀个字符不能是数字。
3.关键字不能声明为变量名。
变量名不要过长,最好不要使⽤中⽂和拼⾳,还有不能乱起变量名,⽐如名不搭意。
12.阐述⼀下unicode和utf-8的区别(或者unicode在python3的作⽤)(⼝述)
unicode⼜叫万国码,涵盖全世界的编码,所有字符和符号最少由16位(2个字节)表⽰,和别的编码有对应映射关系。 utf-8对unicode进⾏了优化,uft-8对于英⽂只占⽤1个字节,欧洲字符2个字节,东亚字符3个字节,特殊字符4个字节。在python3中默认在内存存储代码的形式就是unicode,为了⽅便不同国家的⼈查看代码。
13.深浅copy-引⽤和copy(),deepcopy()的区别(⼝述)
1.引⽤赋值的时候,指向同⼀个列表地址,如果a列表重新赋予别的列表,b还是指向之前的地址,b列表不改变,
如果a列表⾥的值改变,那么b也会跟着改变。
2.当使⽤copy()的时候,相当于整个列表包括⾥⾯的东西⼀起完整拷贝给你,不是指向同⼀个地址,
手写js的tostring a⾥⾯的值改变,b列表不跟着改变。但是如果a列表是嵌套列表,嵌套列表⾥的值发⽣变化,
拷贝的列表b⾥的嵌套列表也会跟着改变,因为列表⾥的列表是指向同⼀个地址,相当于1.的情况
3.使⽤deepcopy()的话,列表⾥的数地址也会不⼀样,所以改变列表a⾥的嵌套列表的数,b也不会跟着改变。
总结:浅拷贝,只拷贝顶级的对象,或者说⽗级对象
深拷贝,拷贝所有的对象,顶级对象及其嵌套对象,或者说⽗级对象及其⼦对象
14.python2和python3的默认字符编码(⼝述)
python2默认字符编码是ASCII,⽂件编码也是ASCII
python3默认字符串编码是unicode,⽂件编码是utf-8
15.集合的特性(⼝述)
确定性:元素必须可以hash。互异性:元素不可相同。⽆序性。
16.列表['alex','egon','yuan','wusir','666'](编程)
1.把666替换成999
2.获取"yuan"索引
3.假设不知道前⾯有⼏个元素,分⽚得到最后的三个元素
16.列表['alex','egon','yuan','wusir','666'](编程)
1.把666替换成999
2.获取"yuan"索引
3.假设不知道前⾯有⼏个元素,分⽚得到最后的三个元素
为啥叫三相异步电动机li =['alex','egon','yuan','wusir','666']
li[-1] = '999'
print(li)
print(li.index('yuan'))
last3 = li[-3:]
print(last3)
17.对字典进⾏增删改查(编程)
{"Development":"开发⼩哥","OP":"运维⼩哥","Operate":"运营⼩仙⼥","UI":"UI⼩仙⼥"}
dic = {"Development":"开发⼩哥","OP":"运维⼩哥","Operate":"运营⼩仙⼥","UI":"UI⼩仙⼥"}
#增
dic['manage']='alex'
print(dic)
#删
del dic['Development']
print(dic)
#改
dic['manage'] = 'oldboys'
spring对应词print(dic)
#查看
find = ("UI")
print(find)
18.计算1++98+99+100 (编程题)
#18.计算1++98+99+100 (编程题)
# count = 1
# counts =0
# while count<=100:
# counts=count+counts
# print(counts)
# count +=1
count =0
for i in range(1,101):
count = count+i
print(count)
19. 制作趣味模板程序(编程题)
需求:等待⽤户输⼊名字、地点、爱好,根据⽤户的名字和爱好进⾏任意现实
如:敬爱可爱的xxx,最喜欢在xxx地⽅⼲xxx
# 19. 制作趣味模板程序(编程题)
# 需求:等待⽤户输⼊名字、地点、爱好,根据⽤户的名字和爱好进⾏任意现实
# 如:敬爱可爱的xxx,最喜欢在xxx地⽅⼲xxx
#
username = input("请输⼊名字>>")
userpalce = input("请输⼊地点>>")
userhobby = input("请输⼊爱好>>")
print("敬爱可爱的%s,最喜欢在%s地⽅⼲%s"%(username,userpalce,userhobby))
20.写⼀个三次认证(编程)
实现⽤户输⼊⽤户名和密码,当⽤户名为 seven 或 alex 且密码为 123 时,显⽰登陆成功,否则登陆失败,失败时允许重复输⼊三次# 20.写⼀个三次认证(编程)
# 实现⽤户输⼊⽤户名和密码,当⽤户名为 seven 或 alex 且密码为 123 时,显⽰登陆成功,
# 否则登陆失败,失败时允许重复输⼊三次
#
_username1 = 'seven'
_username2 = 'alex'
_password = '123'
count =0
while count<3:
username = input("名字>>")
password = input("密码>>")
if (username==_username1 or username==_username2) and password ==_password:
print("登陆成功")
break
else:
print("登陆失败")
count+=1
21.切割字符串"luffycity"为"luffy","city"(编程)
# 21.切割字符串"luffycity"为"luffy","city"(编程)
info = "luffycity"
print(info[0:5])
print(info[5:])
22.猜年龄游戏(编程题)
# 22.猜年龄游戏(编程题)
age =20python基础知识填空题
count = 0
while count<3:
user_age = input("请输⼊年龄>>")
if user_age.isdigit() is True:
if age == int(user_age):
print("恭喜")
break
elif int(user_age) >age:
print("猜⼤了,请重试")
else:
print("猜⼩了,再试试")
else:
print("请输⼊数字")
pass
count+=1
23.求1~100间所有偶数的和(亦可奇数和,使⽤while循环写)(编程题)。
# 23.求1~100间所有偶数的和(亦可奇数和,使⽤while循环写)(编程题)。
count =0
general是什么词性sumn=0
while count<=100:
if count%2==0:
sumn =count+sumn
count+=1
print(sumn)
24.从键盘接收⼀百分制成绩(0~100),要求输出其对应的成绩等级A~E。其中,90分以上为'A',80~89分为'B',70~79分为'C',60~69分为'D',60分以下为'E'。(编程题)
# 24.从键盘接收⼀百分制成绩(0~100),要求输出其对应的成绩等级A~E。
# 其中,90分以上为'A',80~89分为'B',
# 70~79分为'C',60~69分为'D',
# 60分以下为'E'。(编程题)
usergrade = input("请输⼊成绩>>")
if usergrade.isdigit() is True:
if int(usergrade)>=90:
print("A")
elif int(usergrade)>=80:
print("B")
elif int(usergrade)>=70:
print("C")
elif int(usergrade)>=60:
print("D")
else:
print("E")
else:
print("请输⼊数字")
pass
25.输⼊⼀年份,判断该年份是否是闰年并输出结果。(该程序可以重复使⽤使⽤while True)(编程题)
注:凡符合下⾯两个条件之⼀的年份是闰年。(1)能被4整除但不能被100整除。(2)能被400整除。
# 25.输⼊⼀年份,判断该年份是否是闰年并输出结果。(该程序可以重复使⽤使⽤while True)(编程题)
# 注:凡符合下⾯两个条件之⼀的年份是闰年。(1)能被4整除但不能被100整除。(2)能被400整除。
#
plsqldeveloper怎么用while True:
year_input = input("请输⼊年份>>")
if year_input.isdigit() is True:
if (int(year_input)%4 ==0 and int(year_input)%100!=0) or int(year_input)%400==0:
print("闰年")
else:
print("平年")
elif year_input == 'q':
break
else:
pass
26.有如下字符串:n = "路飞学城"(编程题)
- 将字符串转换成utf-8的字符编码,再将转换的字节重新转换为utf-8的字符编码
- 将字符串转换成gbk的字符编码,再将转换的字节重新转换为utf-8的字符编码
# 26.有如下字符串:n = "路飞学城"(编程题)
#
# - 将字符串转换成utf-8的字符编码,再将转换的字节重新转换为utf-8的字符编码
# - 将字符串转换成gbk的字符编码,再将转换的字节重新转换为utf-8的字符编码
#
n = "路飞学城"
n8 = n.encode(encoding='utf-8')
print("转码为utf8>>%s"%n8)
n9 = n8.decode(encoding='utf-8')
print("解码为utf8>>%s"%n9)
ngbk = n.encode(encoding='gbk')
print(ngbk)
ndgbk = ngbk.decode(encoding='gbk')
print(ndgbk)
n9 = de(encoding='utf-8')
print(n9)
27.将列表['alex', 'steven', 'egon'] 中的每⼀个元素使⽤ ‘\_’ 连接为⼀个字符串(编程)
# 27.将列表['alex', 'steven', 'egon'] 中的每⼀个元素使⽤ ‘\_’ 连接为⼀个字符串(编程)
#
li =['alex', 'steven', 'egon']
# a = ("\_").join(li)
# print(a)
s ='\_'
print(s.join(li))
28.⾃定义两个,并求交集,合集,差集。(编程)
a1 ={3,4,5,6}
a2 ={1,2,3,4}
jiao =a1|a2
print(jiao)
cha = a1-a2
print(cha)
bing = a1&a2
print(bing)
29.求100以内不能被3整除的所有数,并把这些数字放在列表sum3=[]⾥,并求出这些数字的总和和平均数。(计算的时候告诉学员,sum是⼀个关键词,不能当作变量)(编程)
# 29.求100以内不能被3整除的所有数,并把这些数字放在列表sum3=[]⾥,
# 并求出这些数字的总和和平均数。(计算的时候告诉学员,sum是⼀个关键词,不能当作变量)(编程)
sum3 =[]
count =0
sums =0
while count<=100:
if count%3!=0:
sum3.append(count)
sums =sums+count
count+=1
print(sums)
print(sum3)
print(sums/len(sum3))
30.根据字典内容打印出下⾯的形式(编程)
可以不打印⼯整对齐的效果,主要是让学员获取key和value。
{"Development":"开发⼩哥","OP":"运维⼩哥","Operate":"运营⼩仙⼥","UI":"UI⼩仙⼥"}
效果如下:
1. 删除了UI
2. 修改了Operate
```
Development --- 开发⼩哥
OP --- 运维⼩哥
Operate --- ⼩仙⼥
```
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论