Python基础练习题
1.输入任意三个整数,将它们从小到大排列并输出
list=[]
for i in range(0,3):
x=int(input("请输入一个整数:"))
list.append(x)
list.sort()
print(list)
2.求任意字符串的长度
a=str(input("请输入字符串:"))
print("字符串长度为:%s"%len(str(a)))
- 定义一个函数,输入任意三个学生的姓名,然后写入到 D 盘根目录下的
test.txt 中
def write_text():
path = "D:/"
full_path = path + "test.txt"
file = open(full_path, "w")
for i in range(3):
msg=input("请输入:")
file.write(msg+"\n")
write_text()
- 定义一个函数,求 1-n 之间的所有偶数和,默认计算 1-10
def ou_sum():
sum=0
for n in range(11):
if n % 2 == 0:
sum+=n
print("所有偶数和为:%d"%sum)
ou_sum()
列表式:
s=[i for i in range(11) if i%2==0]
print("偶数总和为:%s"%sum(s))
5.定义一个函数,可以将任意两个字符串拼接到一起
a=input("请输入任意字符串:")
b=input("请输入任意字符串:")
def str():
ab="".join([a,b])
print(ab)
str()
6.输入任意三个整数,计算前两数之和与第三数的乘积
a=int(input("请输入第一个数:"))
b=int(input("请输入第二个数:"))
c=int(input("请输入第三个数:"))
t=a+b*c
print(t)
- 写出Python的优势,三个以上
- 学习Python可以用来干什么
- 现有 str=“ABEFG” ,如何取出 FG 并打印
str="ABEFG"
print(str[3::])
10.编写一个小程序:让用户输入任意的用户名与密码,然后将他输入的用户名与密码打印出来,如用户输入 abc/123 ,则打印您输入的用户名是 abc ,密码是 123
i=input("请输入用户名/密码:")
s=i.split("/")
print("您输入的用户名是:"+s[0],"密码是:"+s[1])
11.字符串有哪些特点
可以是下标(索引);
字符串可以被连接在一起,用“+”运算符,重复*;
字符串可以写多行;
单引号或双引号。
- 字符串在使用 % 格式化时,要不要考虑数据类型,若要,如何考虑?
- 写出Python中常见的基础数据类型
Number(数字)
String(字符串)
List(列表)
Tuple(元组)
Set(集合)
Dictionary(字典)
- 现有 a = (3>=8) and (2!=2) ,则 a 的值是?
- (判断题)Python是一门编译型语言,运行前需要将代码编译成机器码再执行
16.在Python中,想要打开 E 盘下的 t 目录下的 a.doc 文件,在表示该文件的路径时需要注意什么?
17.使用while循环写出九九乘法表
i=1
while i<=9:
j=1
while j<=i:
print('%d*%d=%d'%(j,i,i*j),end='\t') # \t 可以使其上下对齐
j+=1
print('\n')
i+=1
for循环
for i in range(1,10):
for j in range(1,i+1):
print ('%d*%d=%d' % (j, i, i * j), end='\t') # \t 可以使其上下对齐
print('\n')
18.生成一个包含1-1000之间的所有奇数的列表
list=[]
for i in range(1001):
if i%2 !=0:
list.append(i)
print(list)
19.现有 nums=[2, 5, 7] ,如何在该数据最后插入一个数字 9 ,如何在2前面插入一个数字 0
nums=[2,5,7]
nums.append(9)
print(nums)
nums.insert(0,0)#list.insert(index, obj) index -- 对象 obj 需要插入的索引位置。 obj -- 要插入列表中的对象。
print(nums)
20.如何对一个数字列表从小到大以及从大到小排序
list=[2,3,11,33,2,9,2]
list.sort()#默认升序 reverse=False
print(list)
list.sort(reverse = True)#降序
print(list)
21.元组与列表有啥区别
元组是不可变的, 而列表是可变的
元组通常由不同的数据,而列表是相同类型的数据队列
元组表示的是结构,而列表表示的是顺序
列表是动态的,长度大小不固定,可以随意的增加、删除、修改元素
元组是静态的,长度在初始化的时候就已经确定不能更改,更无法增加、删除、修改元素
所占用的内存空间是不同
- 现有 employee={“id”:1, “salary”:2000} 用来储存员工的一些基本信息,
如何在该数据中插入员工的手机号,号码自定义
employee={
"id":1, "salary":2000}
employee["mobile"]=13794431242
print(employee)
- 编写一个小程序:设计一个登录程序,需要用户输入用户名与密码,用户名/密码是: Alexx/123 则登录成功,否则登录失败
a=input("请输入用户名/密码:")
if a=="Alexx/123":
print("登录成功!")
else:
print("登录失败!")
24.写出程序的三大执行方式
解释器方式执行
交互式方式执行
集成开发环境
25.如何打印十次 中国很强
print("中国很强""\n"*10)
26.现有 nums=(1,2,3,4) ,如何在该数据最后插入数字 5
nums=(1,2,3,4)
n=nums+(5,)
print(n)
27.使用 for 循环写出九九乘法表
for i in range(1,10):
for j in range(1,i+1):
print ('%d*%d=%d' % (j, i, i * j), end='\t') # \t 可以使其上下对齐
print('\n')
28.什么是文档注释,用来干什么
在程序中对某些代码进行标注说明
29.函数中的参数有哪些传递方式
第一种 fun1(a,b,c)是直接将实参赋予形参
第二种 fun2(a=1,b=2,c=3)根据键值对的形式做实参与形参的匹配
第三种 fun3(*args),这传参方式是可以传入任意个参数
第四种 fun4(**kargs)最为灵活,其是以键值对字典的形式向函数传参
30.为什么要捕获异常,捕获异常的格式是?
try:
...代码1...
...代码2...
...代码3...
except 异常类型:
try中一旦检测到异常,就执行这个位置的逻辑
- 在python中如何快速安装一个第三方模块
Pip install python
31.什么是函数的返回值,有什么特点
return语句的结果就是函数的返回值
32.生成一个包含 24 个斐波那契数列的列表
33.现有 a=‘{“a”:1, “b”:2}’ ,如何将其转为字典
a='{"a":1, "b":2}'
print(eval(a))
34.如何暂停代码 3 秒钟
import time
for i in range(10):
print(i)
#暂停3秒
time.sleep(3)
35.怎么读取文件中的所有内容,并返回一个列表
- 什么是继承,有什么特点
- 现有一个文本文件 f 如下,执行 f.read(3) ,得到什么
```python
f = open("D:\\runoob.txt",encoding='utf-8')
print ("文件名为: ", f.name)
line = f.read(3)
print ("读取的字符串: %s" % line)
关闭文件
f.close()
- 文件操作后如何自动关闭文件
关闭文件
f.close()
- 面向对象中,类的组成部分有哪些
- 定义一个类 class login() ,找出该代码中的错误并修正
- 类的初始化使用哪个函数(方法)
- 现有 a = “tashi” ,请将字符 t 改成 T
a="tashi"
r=a.replace('t','T') #用T替换t
print(r)
a="tashi"
l=list(a)
l[0]="T"
s="".join(l)
print(s)
- 现有 True = “123” - “1” ,找出其中的错误,并修正
- 现有 num = True - (False - True) ,请问 num 的值是多少
- 现有 hi = “hi001” ,如何取出 1 ,如何取出 001
hi = "hi001"
print(hi[4])
print(hi[2::])
47.写出所有已学的字符串格式化的占位符
%、{
}.format
48.写出变量的命名规范
在使用标识符时,需要注意如下规则:
1.标识符可以由字母、数字、下划线(_)组成,其中数字不能打头。
2.标识符不能是 Python 关键字,但可以包含关键字。
3.标识符不能包含空格。
49.变量的赋值有哪些方法
50.如何反转一个列表
第一种,使用reversed 函数,reversed返回的结果是一个反转的迭代器,我们需要对其进行 list 转换
listNode = [1, 2, 3, 4, 5]
newList = list(reversed(listNode))
print(newList)
第二种,使用sorted函数,sorted是排序函数,它是对一个列表进行排序后生成一个新的list列表,而sort则是在原来的列表上直接进行排序。
listNode = [1, 2, 3, 4, 5]
newList = sorted(listNode, reverse=True)
print(newList)
reverse是排序规则,True表示按降序排列,False表示按升序进行排序,False是默认值
第三种,使用切片
listNode = [1,2,3,4,5]
li = listNode[::-1]
print(li)
51.以下选项中,属于可变类型的有
可变类型(mutable):列表,字典(key是不可变)
不可变类型(unmutable):数字,字符串,元组
A. () B. [1] C. (1) D. "123"
- 现有 a = [[“A”,1], [“B”,2]] ,如何取出 2
a = [["A",1], ["B",2]]
print(a[1][1])
53.如何获取字典中的所有键以及所有值
#创建一个存储一个学生的信息,通过遍历可以取出所有信息.取出字典中所有的键-值对.以使用items()返回一个键值对列表,并配合for循环进行遍历
student={
'name':'xiaoming','age':11,'school':'tsinghua'}
for key,value in student.items():
print(key+':'+str(value))
#创建一个人和对应喜欢水果的字典.取出字典中的键,可以使用keys()方法取出字典中的键,不取对应的值
people={
'lifei':'apple','fanming':'peach','gaolan':'banana','hanmeimie':'peach'}
for name in people.keys():
print(name)
54.用一行代码生成一个包含 1-10 之间所有偶数的列表
print([i for i in range(1,11) if i%2==0])
-
现有 a = ‘{“id”:01, “price”:3999.9}’ ,该数据是编号为 01 ,价格为
3999.9 元华为P30手机的信息,请在该数据中,插入该手机的名称
56.定义一个函数:计算 1-n 之间的所有 5 的倍数之和,默认计算 1-100 ( n 是一个整数) -
假定一对大兔子每月能生一对小兔子,且每对新生的小兔子经过两个月可以长成一对大兔子,具备繁殖能力,如果不发生死亡,且每次均生下一雌一雄,问两年后共有多少对兔子?
-
现有 student = {“name”:“zs”, “age”:18, …} ,请将该数据输出成
name=zs,age=18… (注意省略号) -
什么是局部变量,有什么特点,如何将局部变量声明成全局变量
-
定义一个函数,可以判断任意的字符串中有几个数字
def s():
i=input("请输入任意字符串:")
print(len(i))
s()
- 定义一个函数,将用户输入的用户名与密码写入到 D 盘根目录下 data.txt
中
def write_text():
path = "D:/"
full_path = path + "data.txt"
file = open(full_path, "w")
for i in range(3):
msg=input("请输入用户名/密码:")
file.write(msg+"\n")
write_text()
- 导入模块有哪几种方法
- 如何使代码暂停 0.5 秒
- 现有 a = ‘{“A”:1, “B”:2}’ ,如何快速将 2 修改成 4
- 如何将任意一个列表的所有数据复制到另外一个列表(禁止赋值)
- 任意输入一个字符串,如果字符串中包含 tashi ,则将该字符串写入到
tashi.txt 中,并自动关闭该文件
a=input("请输入任意字符:")
if a =="tashi":
path = "D:/"
full_path = path + "dashi.txt"
file = open(full_path, "w")
file.write(a + "\n")
else:
file.close()
67.编写一个电费计算器程序,当用电量在 100 度及以下时,收费 1 元/度;当超过 100 度,则收费 1.5 元/度
i=0
sum=int(input("请输入电量为:"))
if sum < 100:
i=1
print(i)
else :
i=1.5
print(i)
- 如何主动抛出一个异常
- 计算 1+2-3+4-5… …100 的值
sum=0
for x in range(101):
sum+=x
print (sum)
70.将任意列表的元素值按照相反的顺序打印出来
l=[1,2,5,677,65,66]
切片反序
print(l[::-1])
降序:
l.sort(reverse=True)
print(l)
反序
print(list(reversed(l)))
71.如何将一个列表中的重复值去除,如 [1, 2, 2] 去重后得到 [1, 2]
l=[1, 2, 2]
print(list(set(l)))
72.一行代码实现1~100之和
print(sum(range(1, 101)))
73.python中生成随机整数、随机小数、0—1之间小数方法
import random
print(random.randint(1,3)) # [1,3]之间的随机整数
print(random.uniform(1,3)) # (1,3)之间的随机浮点数
print(random.random()) # [0,1)之间的随机浮点数
74.< div class=“nam”>中国< /div>,用正则匹配出标签里面的内容(“中国”),其中class的类名是不确定的
import re
str = "<div class='nam'>中国</div>"
res = re.findall("<div class='.*'>(.*?)</div>", str)
print(res)
75.s = “ajldjlajfdljfddd”,去重并从小到大排序输出”adfjl”
s = 'ajldjlajfdljfddd'
j = set(s)
l = list(j)
l.sort(reverse=False) # sort()方法无返回值
print(''.join(l))
76.用lambda函数实现两个数相乘
sum = lambda a,b:a*b
print(sum(4,5))
77.两个列表[1,5,7,9]和[2,2,6,8]合并为[1,2,2,3,6,7,8,9]
a = [1,5,7,9]
b = [2,2,6,8]
print(a)
a.extend(b)
print(a)