Python基础练习题

Source

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)))
  1. 定义一个函数,输入任意三个学生的姓名,然后写入到 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. 定义一个函数,求 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)
  1. 写出Python的优势,三个以上
  2. 学习Python可以用来干什么
  3. 现有 str=“ABEFG” ,如何取出 FG 并打印
str="ABEFG"
print(str[3::])

10.编写一个小程序:让用户输入任意的用户名与密码,然后将他输入的用户名与密码打印出来,如用户输入 abc/123 ,则打印您输入的用户名是 abc ,密码是 123

i=input("请输入用户名/密码:")
s=i.split("/")
print("您输入的用户名是:"+s[0],"密码是:"+s[1])

11.字符串有哪些特点

可以是下标(索引);
字符串可以被连接在一起,用“+”运算符,重复*;
字符串可以写多行;
单引号或双引号。
  1. 字符串在使用 % 格式化时,要不要考虑数据类型,若要,如何考虑?
  2. 写出Python中常见的基础数据类型
Number(数字)
String(字符串)
List(列表)
Tuple(元组)
Set(集合)
Dictionary(字典)
  1. 现有 a = (3>=8) and (2!=2) ,则 a 的值是?
  2. (判断题)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.元组与列表有啥区别

元组是不可变的, 而列表是可变的
元组通常由不同的数据,而列表是相同类型的数据队列
元组表示的是结构,而列表表示的是顺序
列表是动态的,长度大小不固定,可以随意的增加、删除、修改元素
元组是静态的,长度在初始化的时候就已经确定不能更改,更无法增加、删除、修改元素
所占用的内存空间是不同
  1. 现有 employee={“id”:1, “salary”:2000} 用来储存员工的一些基本信息,
    如何在该数据中插入员工的手机号,号码自定义
employee={
    
      "id":1, "salary":2000}
employee["mobile"]=13794431242
print(employee)
  1. 编写一个小程序:设计一个登录程序,需要用户输入用户名与密码,用户名/密码是: 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中一旦检测到异常,就执行这个位置的逻辑
  1. 在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.怎么读取文件中的所有内容,并返回一个列表

  1. 什么是继承,有什么特点
  2. 现有一个文本文件 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()
  1. 文件操作后如何自动关闭文件
关闭文件
f.close()
  1. 面向对象中,类的组成部分有哪些
  2. 定义一个类 class login() ,找出该代码中的错误并修正
  3. 类的初始化使用哪个函数(方法)
  4. 现有 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)
  1. 现有 True = “123” - “1” ,找出其中的错误,并修正
  2. 现有 num = True - (False - True) ,请问 num 的值是多少
  3. 现有 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" 
  1. 现有 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])
  1. 现有 a = ‘{“id”:01, “price”:3999.9}’ ,该数据是编号为 01 ,价格为
    3999.9 元华为P30手机的信息,请在该数据中,插入该手机的名称
    56.定义一个函数:计算 1-n 之间的所有 5 的倍数之和,默认计算 1-100 ( n 是一个整数)

  2. 假定一对大兔子每月能生一对小兔子,且每对新生的小兔子经过两个月可以长成一对大兔子,具备繁殖能力,如果不发生死亡,且每次均生下一雌一雄,问两年后共有多少对兔子?

  3. 现有 student = {“name”:“zs”, “age”:18, …} ,请将该数据输出成
    name=zs,age=18… (注意省略号)

  4. 什么是局部变量,有什么特点,如何将局部变量声明成全局变量

  5. 定义一个函数,可以判断任意的字符串中有几个数字

def s():
    i=input("请输入任意字符串:")
    print(len(i))
s()
  1. 定义一个函数,将用户输入的用户名与密码写入到 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()
  1. 导入模块有哪几种方法
  2. 如何使代码暂停 0.5 秒
  3. 现有 a = ‘{“A”:1, “B”:2}’ ,如何快速将 2 修改成 4
  4. 如何将任意一个列表的所有数据复制到另外一个列表(禁止赋值)
  5. 任意输入一个字符串,如果字符串中包含 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. 计算 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)