当前位置: 首页 > news >正文

python程序设习题答案

第一章

1.在下列领域中,使用 Python 不可能实现的是( C )

A . Web 应用开发 

B .科学计算

C .操作系统管理

D .游戏开发

2.Python程序文件的扩展名是( D )。

 A.python     B.pyt    C.pt    D.py

3.以下叙述中正确的是( C )。

 A . Python 3.x与 Python 2.x兼容

 B . Python 语句只能以程序方式执行

 C . Python 是解释型语言

 D . Python 语言出现得晚,具有其他高级语言的一切优点4.Python是一种( B )类型的编程语言。

 A 机器语言       B.编译    C .解释   D .汇编语言

5.以下不属于 Python 语言特点的是( B )。

A.语法简洁

B.依赖平台

C.支持中文

D.类库丰富

6.Python的输入来源包括( D )。

A.文件输入

B.控制台输入

C.网络输入

D.以上都是

7.关于 Python 语言,以下说法错误的是( B )。

 A . Python 是从 ABC 发展起来的

 B . Python 源程序需编译和连接后才可生成可执行文件

 C . Python 是开源的,它可以被移植到许多平台上

 D . Python 是一门高级的计算机语言

8.下列关于 Python2.x与python3.x的说法,错误的是 ( B )

 A . Python 3.默认使用UTF-8编码

 B . Python 2.x与python 3.x中的print语句的格式没有变化

 C . Python 2.x默认使用ASCII

 D . Python 2.x与python 3.x 中运算符“//”的使用方法一致

9.Pyth语句print(“1+2”)的输出是( D )

A.(“1+2”)  B.”1+2”   C.3     D.1+2

10.关于python语言的特点,以下选项中描述错误的是( A )

A.python语言收跨平台语言B.python语言是脚本语言

C.python语言是非开源语言D.python语言是多模型语言

二、思考题

1、请说明python程序设计语言的主要特点

(1)简单罚学.高级语言.解释型语言,可移植性、面向对象.强大的功能、开源,可扩展性、丰富的库、规范代码

2、python程序设计语言的主要用途是什么?

(2)网络爬虫、数据科学.图形处理数据处理、数据库编程多媒体应用游戏开发人工智能和机器学习

第2章Python基本语法

1.Python3.x版本的保留字总数是( A )。

A.33      B.27         C.16       D.29

2.以下选项中,不是Python语言保留字的是( B )。

A.from     B.except    C.go    D. while

3.在Python3.x中,下列输出变量a的正确写法是( D )。

A. print a  B.print(a) C.print“ a” D.print(“a")

4.关于Python语言的注释,以下选项中描述错误的是( D )。

A.Python语言有两种注释方式:单行注释和多行注释

B.Python语言的单行注释以﹟开头

C.Python语言的多行注释以1' '(三个单引号)开头和结尾

D.Python语言的单行注释以单引号(')开头

5.以下选项中不符合Python 语言变量命名规则的是( C )。

A.MyName    B.*_1    C.x      D._Y

6.以下选项中符合Python语言变量命名规则的是( B )。

A.* *Python    B.name_1    C.for     D.def

7.在一行上写多条Python语句使用的符号是( A )。

A.分号   B.逗号     C.冒号      D.点号

8.关于Python注释,以下选项中描述错误的是(A)

A.Python注释语句也被执行

B.注释可用于标明作者和版权信息

C.注释可以辅助程序调试

D.注释用于解释代码原理或者用途

9.关于Python赋值语句,以下选项中不合法的是( A )。

A.x=(y=1)    B.x,y=y,x    C.x=1;y=1   D.x=y=1

10.关于Python 程序中与“缩进"有关的说法,以下选项中正确的是( B )。

A.缩进可以用在任何语句之后,表示语句间的包含关系

B.缩进在程序中长度统一且强制使用

C.缩进统一为4个空格

D.缩进是非强制性的,仅为了提高代码可读性

11.在Python函数中,用于获取用户输入的是( C )

A.eval()    B.print()    C.input()    D.get()

12.Python语言中,以下表达式输出结果为11 的选项是( B )。

A.print(eval("1"+1))        B.print(eval("1"+"1"))

C.print(1+1)                D.print(eval("1+1"))

13.关于Python 基本输入输出函数,描述错误的是( C )。

A.print函数用于输出运算结果

B.eval()函数也称为评估函数,可以去掉字符串最外侧的引号

C.input函数从控制台获得用户的输入,可以按照多种数据类型输出,例如浮点型字符型、列表型等

D.以下代码输出为1.68

x=eval("1.68")

print(x)

14.下面选项中,描述错误的是( C  )。

A.Python可以在同一行中使用多条语句 ,语句之间使用分号(;)分割

B.Python是强面向对象的语言,程序中任何内容统称为对象,包括数字、字符串 、函数等

C.Python 使用缩进来表示代码块,缩进的空格数固定为4 个

D.Python通常是一行写完一条语句 ,但如果语句很长, 可以使用反斜杠(l)来实现一条语句多行

15.语句eval('3.14+6')执行后的输出结果是( B )。

A.9   B.9.14    C.3.14+6   D.'3.14+6'

二、程序设计题

1.编写程序,输出如下语句:

****** * * *** * ** * * * *

Hello Python!

********************

Print(Hello Python!)

2.获得用户输入的一个整数N,计算并输出N的3次方。

n = eval(input())

#eval() 函数用来执行一个字符串表达式,并返回表达式的值。

print(n**32)

3.获得用户输入的两个数x和 y,交换x和y的值并输出。

x=input('please input x')

y=input('please input y')

z=input('please input z')

print ('xyz交换前的值:{},{},{}'.format(x,y,z))

x,y,z=y,z,x

print ('xyz交换后的值:{},{},{}'.format(x,y,z))

第3章基本数据类型

一、选择题

1.关于Python 的数字类型,以下选项中描述错误的是( B )。

A.1.0是浮点数,不是整数

B.浮点数也有十进制、二进制、八进制和十六进制等表示方式

C.整数类型的数值一定不会出现小数点

D.复数类型虚部为0时,表示为1+0j

2.以下是八进制数字的是( C )。

A.0b071   B.0a1010   C.0o651   D.0x345

3.关于 Python 的浮点数类型,以下选项中描述错误的是( B )

A . sys . float _ info 可以详细列出 Python 解释器所运行系统的浮点数各项参数

B . Python 的浮点数可以不带小数部分

C .浮点数有两种表示方法:十进制表示和科学计数法

D .浮点数类型与数学中实数的概念一致,表示带有小数的数值4.下列关于 Python 字符串的说法中,错误的是( C )

A .字符串是用来表示文本的数据类型

B . Python 中可以使用单引号、双引号、三引号定义字符串 C .单引号定义的字符串中不能包含双引号字符 

D .使用三引号定义的字符串可以包含换行符

5.关于 Python 字符串,以下选项中描述错误的是( B )。

A .字符串是一个字符序列,字符串中的编号叫"索引"

B .可以使用 datatype() 测试字符串的类型

C .输出带有引号的字符串,可以使用转义字符"\"

D .字符串可以保存在变量中,也可以单独存在

6.关于 Python 的复数类型,以下选项中描述错误的是( C )

A .对于复数 z ,可以用 z . real 获得它的实数部分

B .复数的虚数部分通过后缀" J "或者" j "来表示

C .对于复数 z ,可以用 z . imag 获得它的实数部分

D .复数类型表示数学中的复数

7.代码 print ("{1:}:{0:.6f}".format (3.1415926,"π"))

的输出结果是(  A  )。

A π:3.141593  B.π:3.14159 C .3.141593:π  D.3.14159: π

8.关于 Python 字符编码,以下选项中描述错误的是( C )

A . Python 可以处理任何字符编码文本

B . Python 默认采用 Unicode 字符编码

C . chr ( x )将字符转换为 Unicode 编码

D . ord ( x )和 chr ( x )是一对函数

9.下列函数中,可以将数值类型转换为字符串的是( D )。

A . complex B . int () C . float () D,str()

10.表达式3+5%6*2//8的值是( D )。

A .6        B .7     C.5       D.4

11.已知变量 name ="张三"、 age =18,下列字符串格式化输出错误的是( D )

A.print('我叫%s,今年我%d岁了'%( age ,name))

B.print('我叫%s,今年我%d岁了'%(name,age))

C.print('我叫{},今年我{}岁了'.format(name,age))

D.print(‘f’我叫{name},今年我{age}岁了')

12.s="0123456789”,以下表示“0123”的选项是( D )。

A.s[-10:-5] B.s[1:5]   C.s[0:3]    D.s[0:4]

13.表达式len("我爱Python程序设计。") >len("Hello world!")的结果是( D )

A.1     B.0    C.False     D.True

14.以下不是Python内置数据类型的是( A )。

A.char   B.int    C.float    D.list

15.(多选)下列关于字符串操作的说法中,正确的是( BD)。

A.字符串支持加减乘除操作

B.字符串可以使用“+”符号进行拼接

C.字符串可以使用split()方法替换子串

D.字符串可以使用strip( )方法去除两侧多余的空格

二、程序设计题

1.输入一个十进制整数,分别输出其二进制、八进制、十六进制字符串。

decimal_num = int(input("请输入一个十进制整数:"))  

# 将十进制整数转换为二进制字符串  

binary_num = bin(decimal_num)  

binary_num = binary_num[2:]  # 去掉前缀"0b"  

# 将十进制整数转换为八进制字符串  

octal_num = oct(decimal_num)  

octal_num = octal_num[2:]  # 去掉前缀"0o"  

# 将十进制整数转换为十六进制字符串  

hexadecimal_num = hex(decimal_num)  

hexadecimal_num = hexadecimal_num[2:]  # 去掉前缀"0x"  

print("二进制表示:", binary_num)  

print("八进制表示:", octal_num)  

print("十六进制表示:", hexadecimal_num)

2.输入字符串s,输出一个宽度为10字符串,字符串 s居中显示,以“*"填充的格式。如果输入字符串超过 10个字符,则输出s的前10个字符。

s = input('请输入一个字符串:')

if len(s)<21:

    print('{:=^20}'.format(s))

else:

    print(s)

3.获得用户输入的一个字符串 ,请输出其全部小写形式和全大写形式

#include<stdio.h>

#include<string.h>

int main()

{

char str[100];

int len;

int i=0;

printf("请输入一段字符串:");

gets(str);

len=strlen(str);

for(i=0;i<len;i++)

{

if(str[i]>='a'&&str[i]<='z')

str[i]-=32;//小写转换成大写是减32,大写转换成小写是加上32

}

puts(str);

}

4.已知字符串s="python程序设计" ,请将字符串两侧的空格去除,并将小写字母p替换为大写字母P。

s = " python 程序设计 "

# 去除字符串两侧的空格

s_trimmed = s.strip()

print(s_trimmed)

# 输出结果为:'python 程序设计'

# 将小写字母p替换为大写字母P

result = s_trimmed.replace('p', 'P')

print(result) # 输出结果为:'PyThon 程序设计'

第4章程序控制结构

一、选择题

1.关于Python的分支结构,以下选项中描述错误的是( A ) 。

A.分支结构可以向已经执行过的语句部分跳转

B.Python中if-elif-else语句描述多分支结构 员额电

C.分支结构使用if保留字 了

D.Python中if-else语句用来形成双分支结构

2.下列关于for循环的说法中,描述正确的是( A )。

A.for循环可以遍历可迭代对象

B.for循环不能嵌套使用

C.for循环不可以与if语句一起使用

D.for循环能控制循环执行的次数

3.以下选项中能够实现Python循环结构的是( C )。

A.if           B.pass           C.for        D.else

4.关于程序的异常处理,以下选项中描述错误的是( B )。

A.程序异常发生后经过妥善处理可以继续执行

B.编程语言中的异常和错误是完全相同的概念

C.Python通过try、except 等保留字提供异常处理功能

D.异常语句可以与else和finally保留字配合使用

5.以下关于break语句和 continue语句的说法中,错误的是( B )。

A.break语句的作用是结束当前循环,跳出它所在的循环结构

B.continue语句的作用是终止执行本次循环尚未运行的代码

C.在当前循环中,continue语句经常与 if语句结合使用

D.在循环嵌套中,break 语句可以同时跳出多层循环

6.以下程序的输出结果是( B )。

for i in"Python":

ifi=="h":

break

print(i,end="")

A.Python    B.h       C.无输出     D.Pyt

7.给出下面代码:

i=0

whilei<5:

j=5

while j>i:

print("*",end=")

j-=1

print("\n")

i+=1

以下选项中描述错误的是( C )。

A.无输出结果

B.第1行有5个星号*

C.内层循环j用于控制每行打印*的个数

D.输出S行

8.下列关于pass语句描述正确的是( D )。

A.在Python中,pass就是空语句

B.pass语句会终止本次循环

C.pass语句起到注释说明作用

D.以上都正确

9.下列程序代码运行结果是( A )。

sum=0

foriin range(10):

sum+=i

print(sum)

A.55   B.45   C.10   D.44

10.下列程序代码的循环次数是( D )。

i=0
while i<10:
    if i<0:
        continue
        if i==5:
            break
i+=1
primt(i)

A.4     B.5    C.6     D.无限循环

二、程序设计题

1.编写程序实现系统登录账号检测功能。 系统登录一般具有账号密码检测功能,即检测用户输入的账号和密码是否正确。 若用户输入的账号或密码不正确,则提示"用户名或密码错误"和"您还有*次机会";若用户输入的账号和密码正确,则提示“登录成功”;若输入的账号或密码错误次数超过3 次,则提示“输入错误次数过多,请稍后再试”。

# 定义变量

s = 3       # 设置登录次数

# 设置账号密码

user = input('请设置账号:')

password = input('请设置密码:')

print('已注册成功!')      

while True:

    # 带提示语输入赋值

    a_user = input('请输入账号:')

    a_password = input('请输入密码:')

    # 登陆成功

    if user == a_user and password == a_password:

        print('登录成功!')

        break

    # 账号密码错误

    else:

        print('账号和密码错误!', end='')

        if s != 1:

            print('还有{}次机会'.format(s - 1))

    # 结束条件

    if s <= 1:

        print('\n输入次数过多,账号已被冻结!')

        break

    s -= 1      # 记录输入次数

2.编写程序实现以下功能;输入若干个学生的成绩,统计分数低于60分的学生人数比例。

scores = [ ]

n = int(input("请输入学生人数:"))

for i in range(n):

score = float(input(“请输入第{个学生的成绩:".format(i+1)))

scores. append(score)

low_scores = [score for score in scores if score < 60]low_scores_count = len( low_scores)

low_scores_ratio = ( low_scores_count / n)*100

print("低分学生人数比例:{:.2f}%".format( low_scores_ratio))

3.编写程序实现"计算器"功能,输入两个运算数x、y和运算符,实现加、 减、乘、除四则运算,当进行除法运算时,若除数为0,则显示“除数不能为0!”

def calculate():  

    # 输入两个运算数和运算符  

    x = float(input("请输入第一个运算数: "))  

    y = float(input("请输入第二个运算数: "))  

    operator = input("请输入运算符(+,-,*,/): ")  

  

    # 根据运算符执行相应的操作  

    if operator == '+':  

        print(f"{x} + {y} = {x + y}")  

    elif operator == '-':  

        print(f"{x} - {y} = {x - y}")  

    elif operator == '*':  

        print(f"{x} * {y} = {x * y}")  

    elif operator == '/':  

        # 检查除数是否为0  

        if y == 0:  

            print("除数不能为0!")  

        else:  

            print(f"{x} / {y} = {x / y}")  

    else:  

        print("无效的运算符")  

  

# 运行程序  

calculate()

4.猜数游戏。由电脑随机生成一个1~100中的数字,用户输入一个数字,若猜测的数字大于随机生成的数字,则提示"很遗憾,你猜大了";若猜测的数字小于随机生成的数字,则提示"很遗憾,你猜小了";若在规定的次数内猜中随机生成的数字,则提示"恭喜,猜数成功",本题设置3次机会。

import random  

  

def guess_number_game():  

    number_to_guess = random.randint(1, 100)  

    guesses = 0  

    while guesses < 3:  

        user_guess = int(input("请输入一个1~100的数字:"))  

        guesses += 1  

        if user_guess > number_to_guess:  

            print("很遗憾,你猜大了")  

        elif user_guess < number_to_guess:  

            print("很遗憾,你猜小了")  

        else:  

            print("恭喜,猜数成功!")  

            break  

    else:  

        print("很遗憾,你没有在规定次数内猜中数字。正确答案是", number_to_guess)  

  

if __name__ == "__main__":  

    guess_number_game()

5.编写程序:打印一个实心等腰三角形。

n = 5  # 可以更改这个值来改变三角形的大小  

for i in range(n):  

    for j in range(i):  

        print("*", end="")  

    print()

6.编写程序:打印一个空心三角形。

n = 5  # 可以更改这个值来改变三角形的大小  

for i in range(n):  

    for j in range(i):  

        print(" ", end="")  

    for j in range(2 * (n - i) - 1):  

        print("*", end="")  

    print()

7.编写程序求解鸡兔同笼问题:鸡兔一共有50只,脚一共有160只,问鸡和兔各多少只?8.编写程序输出所有四位整数中的回文数并统计个数。一个数若左右对称则称为回文数,如5885。

第5章异常处理

1.关于程序的异常处理,以下选项中描述错误的是( C )。

A . Python 异常语句可以与 else 和 finally 保留字配合使用

B . Python 通过 try 、 except 等保留字提供异常处理功能

C . Python 编程语言中的异常和错误是完全相同的概念

D .程序异常发生后经过妥善处理可以继续执行

2.(多选)程序运行时引发错误的原因有很多,以下错误原因描述正确的有( BCD )。

A .语法格式错误          B.除法运算时除数为0

C .文件不存在    D.组合数据类型元素下标末越界

3.下列关于 try … except …语句的说法,错误的是(A)。 A .程序捕获到异常会先执行 except 语句,然后再执行 try 语句 B .执行 try 语句下的代码,如果引发异常,则执行过程会调到 except 语句

C . except 可以指定错误的异常类型

D . try 子句中如果没有发生异常,则忽略 except 子句中的代码4.下列关于异常的说法,正确的是(C)。

A .语法格式正确的代码不会出现异常

B . try ... except ... else ...句可以捕获异常

C .如果 except 子句没有指明任何异常,可以捕获所有的异常 D .程序中一旦遇到异常便会终止

5.以下 Python 语言关键字在异常处理结构中用来捕获特定类型异常的选项是( D )

A . in    B.for    C.lambda      D . except

6.下列关于 finally 语句块描述正确的是( A )

A .总是被执行

B .异常发生时才执行

C .异常没有发生时才执行

D .当 try 语句块后面没有 catch 时,才会执行 finally 中的代码

7.对以下程序描述错误的是( C )。

try:

  #语句块1

except IndexError as i:

#语句块2

A.由于该程序处理了异常, ,因此一定不会终止程序

B.由于该程序处理了异常,因此不一定不会因弃常引发终止

C.语句块1,如果抛出IndexError异常,不会因为异常终止程序

D.语句块2不一定会执行

8.(多选)下列语句中,能捕获异常的有( B )。

A.

try:

9/0

B.

try:

9/0

except:

print("除数不能为0")

C.

Try:

9/0

except Exception as e:

print(e)

D.

try:

9/0

except ZeroDivisionError as e:

print(e)

9.当从键盘输入1,2,3后,以下程序的输出结果是( B )。

try:

num=eval(input("请输入一个列表:"))

num.reverse()

print(num)

except:

print("输入的不是列表")

A.运算错误   B.输入的不是列表   C.[1,2,3]   D.[3,2,1]

二、程序设计题

1.编写一个计算减法的方法,当第一个数小于第二个数时,抛出"被减数不能小于减数"的异常。

def subtract(a, b):  

    if a < b:  

        raise ValueError("被减数不能小于减数")  

    else:  

        return a - b

2.打印输出口除以range(x,y)的所有结果,n、x、从键盘输入。(如果除数为0要做出Python 程序设计异常判断处理)。

# 获取用户输入  

n = int(input("请输入一个整数n: "))  

x = int(input("请输入一个起始值x: "))  

y = int(input("请输入一个结束值y: "))  

# 循环遍历x到y之间的所有整数  

for i in range(x, y+1):  

    try:  

        # 尝试执行除法操作  

        result = i / n  

        print(f"{i} 除以 {n} 等于 {result}")  

    except ZeroDivisionError:  

        # 如果除数为0,则捕获异常并打印错误信息  

        print(f"错误:除数不能为0,{i} 除以 {n} 产生了一个 ZeroDivisionError")

3.输入一个数字 n ,如果没有异常就计算并输出10/n的结果,如果产生异常,用户重新输入数字,请完善代码。

while True:  

    try:  

        n = float(input("请输入一个数字: "))  

        if n == 0 or n < 0:  

            print("输入无效,请输入一个正数")  

            continue  

        result = 10 / n  

        print(f"10 除以 {n} 的结果是 {result}")  

        break  

    except ValueError:  

        print("输入无效,请输入一个数字")

4用*打印一个边长为 n 的正方形, n 为整数。(如果输入不为整数或者负数时要做出异常判断处理)

def print_square(n):  

    if not isinstance(n, int) or n < 0:  

        raise ValueError("输入必须为非负整数")  

    for i in range(n):  

        for j in range(n):  

            print("*", end="")  

        print()  

  

# 测试函数  

print_square(5)

5.使用异常处理猜数字游戏,数字在1至20之间,输入非整数,抛出异常。

import random  

  

def guess_number():  

    number_to_guess = random.randint(1, 20)  

    print("我想了一个1到20之间的数字,请你来猜一猜:")  

      

    while True:  

        try:  

            user_input = int(input("请输入你的猜测:"))  

            if user_input < 1 or user_input > 20:  

                raise ValueError("输入无效,请输入1至20之间的整数")  

            if user_input == number_to_guess:  

                print("恭喜你,猜对了!")  

                break  

            elif user_input < number_to_guess:  

                print("太小了,请再试一次。")  

            else:  

                print("太大了,请再试一次。")  

        except ValueError as e:  

            print("错误:", e)  

            print("请重新输入一个有效的整数。")  

            continue  

  

if __name__ == "__main__":  

    guess_number()

第6组合数据类型

  1. Python语句 print ( type ({}))的结果是( B )

A .< class ' tuple '> B.<class,’dict’>

C .< class list '> D.<class,’set’>

  1. Python语句 a =[1,2,3, None ,(),[],]; print ( len ( a ))的输出结果是( C )。

A .4          B.5          C .6           D.7

3.关于 Python 元组类型的描述,以下选项错误的是( D )。 A .一个元组可以作为另一个元组的元素

B .元组一旦创建就不能被修改

C . Python 中元组采用逗号和圆括号(可选)来表示

D .元组中元素不可以是不同类型

4.关于 Python 字符串,下列说法错误的是( B )。

A .字符即长度为1的字符串

B .字符串以\ O 标志字符串的结束

C .既可以用单引号,也可以用双引号创建字符串

D .在三引号字符串中可以包含换行回车等特殊字符

5.阅读下面程序:

li _ one =[2,1,4,3]

print ( sorted ( li _ one [:2]))

输出结果正确的是( A )。

 A .[1,2]    B.[2,1]    C .[1,2,3,4]    D.[4,3,2,1]

6.num=[1,2,3,4,5,6,7,8,9,10],则 list ( num [::2])的结果是( A )。

A .[1,3,5,7,9]          B .[2,4,6,8,10]

C .[1,2,3,4,5,6,7,8,9,10]     D.[1,2,3,4,5]

7.下列语句中,可以正确创建元组的有( C )。

A.one = tuple('1','2')  B.two = (‘q’)

 C . three =(' on ',)   D.four = (4,)

8.已知 a =[5,4,3],那么执行语句 a[ len ( a ):]=[1,2]之后 list ( a )的结果是( D )。

A .[1,2,5,4,3]

B.[1,2]

C .[5,4,3,2,1]

D .[5,4,3,1,2]

9、下面程序运行结果是( B )

lis =[11,22,33,"123"," hello "]

s =””

for i in lis :

s= s + str ( i )

print(s)

A .123hello B .112233123hello

C .112233 D .112233'123'' hello

10.下列方法中,可以获取字典中所有键的是( A )。

A . keys () B . value () C . list () D . values ()

11.阅读下面程序:

lan_info ={'01':' Python ','02':'Java','03':'PHP'}

lan_info.update({'03':'C ++'})

print (lan_info )

运行程序,输出结果是( D )。

A .{'01':'Python','02':'Java','03':'PHP'}

B .{'03':'C++','01':'Python','02':'Java'}

C .{'01':' Python ','02':' Java '}

D .{'01':' Python ','02':' Java ','03':' C ++'}

12.阅读下面程序:

setl ={'a','e','b','a'}

setl.add ('d')

print ( len ( setl ))

运行程序,以下输出结果正确的是( C )。

A .5        B.2      C .4  D.3

13.元组变量 t =(" cat "," dog "," tiger "," human "), t [::-1]的结果是( B )

A .[' human ',' tiger ',' dog ',' cat ']

B .(' human ',' tiger ',' dog ',' cat ')

C .{' human ',' tiger ',' dog ',' cat '}

D .运行出错

14.下面程序运行结果是( D )

listl =[' wei ',' xiao ',' bao ',123]

list2=[]

foriin list1:

n = str ( i )

list2.append( n )

v="_". join (list2)

print ( v )

A.[' wei ',' xiao ',' bao ',123,'_']

B._ wei _ xiao _ bao _123

C._ wei _ xiao _ bao _123_

D. wei _ xiao _ bao _123

15.下面代码的输出结果是( D )

listl =[1,2,3]

list2=[4,5,6]

print (list1+list2)

A .[5,7,9]           B.[1,2,3]

C .[4,5,6]           D.[1,2,3,4,5,6]

16.下面代码的输出结果是( B )。

a =[1,2,3]

for i in a [::-1]:

print ( i , end =",")

A .3,1,2,      B.,3,2,1,

C .1,2,3,      D.2,1,3,

二、程序设计题

1.已知字符串 str =' qwertyasdfskdaskerkjsalkj ',请统计该字符串中各字母出现的次数。#遍历字符串,使用字典记录各个字母及其出现的次数

str =' skdaskerkjsalkj '

count ={}

for i in str :

    if i in count.keys():

        count [ i ]+=1

    else :

         count [ i ]=1

print ( count )

{' ': 2, 's': 3, 'k': 4, 'd': 1, 'a': 2, 'e': 1, 'r': 1, 'j': 2, 'l': 1}

第7章函数

1.下列关于函数参数的说法中,错误的是( C )

A .如果需要传入函数的参数个数不确定,可

B .使用关键字参数时需要指出具体形参名

C .* args 以字典保存不定数量的关键字参数

D .定义函数时可以为参数设置默认值参数

2.下列关于 Python 函数的说法中,正确的是( D )。

A .递归函数就是在函数体中调用了自身的函数

B .匿名函数没有函数名

C .匿名函数中可以使用 if 语句

D .匿名函数与使用关键字 def 定义的函数没有区别

3.语句

fl = lambda x : x *2;

f2= lambda x : x **2;

print ( fl ((f2(2))))的运行结果是( D )

A .4          B.6              C.2            D.8

4.若函数为: def r ( x ,**x2): print ( type (x2)),则 r (1, a =2)的运行结果是( C )。

A .< Blasel‘asnt ''str'> C .<class 'dict'> D .<class ' list '>

5.Python中,函数如下:

def numSum(a, b, c):  

    print(a + b + c)  

nums = (1, 2, 3)  

numSum(*nums)

若 nums =(1,2,3),则1(* nums )的运行结果是( A )

A .3              B.6            C.1         D.5

6.阅读下面程序:

num_one =12

def sum ( num_two ):

    global num_one

    num_one=90

    return num_one + num_two

print ( sum (10))运行代码,输出结果为( B )

A .10         B100              C.22          D.12

7.阅读下面程序:

def fact ( num ):

    if num ==1:

        return 1

    else:

        return num + fact ( num -1)

print(fact(5))

运行的代码,输出结果为( D )。

 A .3          B.21           C.1    D.15

二、程序设计题:

1、编写函数,输出1~100中偶数之和。

def evenSum ():

    sum = 0

    for i in range (1,101):

        if i %2==0:

            sum += i

    return sum

print ( evenSum ())答:2550

2.编写函数,计算20*19*18*…*3的结果。

def multiply ():

    p =1

    for i in range (3,21):

        p *= i

    return  p

print( multiply ())

答: 1216451004088320000

3.编写函数,给定任意字符串,找出所有在其中只出现一次的字符。 def count _ str ( str ):

dt ={}#声明字典 dt ,用来暂时保存所有的字母和其统计个数,格式为{字母:个数}

dt1={}#声明字典dt1,用来保存所有统计个数为1的字母,格式为{字母:个数}

def count_str(str):

    dt={}

    dt1={}

    for i in str :

        dt [ i ]= str . count ( i ,0)

    for k,count in dt.items():

        if count ==1:

            dt1.update({k : count})

    return dt1

mystr = input ("请输入需要统计的字符串:")

print ( count_str ( mystr ))

第8章类对象

一、判断题

1.在 Python 中定义类时,如果某个成员名称前有两条下划线则表示是私有成员。( P )

2.Python类不支持多继承。( O )

3.在 Python 定义时实例方法的第一个参数名称不管是什么,都表示对象自身。( P )

4.Python类的构造函数是_ init _( P )。

5.Python中一切内容都可以称为对象。( P )

二、程序设计题

1.定义一个圆类( Circle ),求圆的面积和周长。

2.现有一项业务:" Joker 在 BMW 4S店购买了一俩 BMW X7",根据业务描述,声明相关类。最终输出结果如下: Joker 在BMW4S店购买了一辆BMWx7

class Person:

def init(self, name):

self.name = name

def buy(self):

pass

class CarStore:

def init(self,name):

self.name =name

class Car:

def init(self, name, cartstore):

self.name = name

self.carstore = carstore

person = Person(‘Joker’)

carstore = CarStore(‘BMW’)

car = Car(‘BMW x7’, carstore)

3.创建一个学员类( Student ),并设计三个字段用于表示学生的成绩(语文、数学、英语);然后定义一个列表 list 表示一个班的学生(3人),依次输入每个学生的信息(姓名、学号)和成绩,输入的同时将学员的每科成绩划分等级(90~100:A,80~89:B,70~79:C,60~69:D,60以下: E ),最后输出所有学员的信息。

4.设计一个游戏角色类。属性包含角色名、血量、魔法、状态,方法包含释放技能和被伤害。要求:可自由发挥,但设计要合理。

class Character:  

    def __init__(self, name, health, mana, status='alive'):  

        self.name = name              # name: 角色的名字。

        self.health = health   #health: 角色的生命值,初始值为100。

        self.mana = mana   #mana: 角色的魔法值,初始值为50。

        self.status = status   #status: 角色的状态,默认为"alive",表示角色存活;如果角色死亡,则状态为"dead"。

    def __str__(self):  

        return f"Name: {self.name}, Health: {self.health}, Mana: {self.mana}, Status: {self.status}"  

    def is_alive(self):  

        return self.status == 'alive'  

    def take_damage(self, damage):  

        self.health -= damage  

        if self.health <= 0:  

            self.status = 'dead'  

    def cast_spell(self, spell):  

        if self.mana >= spell.cost:  

            print(f"{self.name} casts {spell.name}!")  

            # TODO: Add effect of spell here  

            self.mana -= spell.cost  

        else:  

            print(f"{self.name} does not have enough mana to cast {spell.name}.")

第9章模块

1.模块文件的扩展名是( D )。

 A . txt    B . html     C . exe    D . py

2.包目录中必须包含以下哪一个文件?( D )

A ._init_.py      B ._name_py

C .use .py       D .main.py

3.在使用数学函数时,需要先导入模块,以下命令错误的是( B )。 A . import math              B . import math as m

C . from math import *       D . import *

4.获取本地的日期和时间的代码是( A )。

A . time . time ()       B . time . localtime ()

C . time ()              D . time . now ()

5.时间间隔是以( D )为单位的浮点小数。

A .分   B.秒  C .时   D。天

6.以下哪一个模块是产生随机数的模块?( A )

A . random   B.rabdon   C . randint    D.Random

7.Python第三方模块安装方法正确的是( B )。

A . install 模块名       B .pip install 模块名

C . install pip 模块名   D .pip setup 模块名

8.re模块是( C )。

A .数学模块  B.时间模块 C .正则表达式模块   D。日志模块

9.下列说法错误的是( D )

A . uninstall 是用于卸载已经安装的第三方模块

B . os是访问操作系统服务功能的标准库

C . tkinter 是 Python 进行 GUI 编程的标准库 

D . json 是标准算术运算函数的标准库

10.json字符串可以转化为 Python 类型,其方法是( C )。

A .json.loads()         B。json.load()

C .json.dumps()、   D.json.dump()

第10章文件与数据

  1. 下面哪一个是添加(追加)模式打开文件做写入操作?( C )

A.f.open(“f”,”r”)   B.f.open(“f”,”w”)

C. f.open(“f”,”a”)    D. f.open(“f”,”w+”)

2.关于 Python 对文件的处理,以下选项中描述正确的是( A )。 A .当文件以文本方式打开时,读写按照字节流方式

B .Python 通过 open ()函数打开一个文件后,该文件能够同时被其他程序使用

C . Python 只能以二进制方式打开文件

D .文件使用结束后要用 close ()方法关闭,释放文件的使用授权3.调用 open 函数可以打开指定文件,在 open()函数中访问方式使用( C )表示只读。

A ." a "     B ." w +"    C ." r "    D ." w "

4.执行如下代码:

f = open (" A . png "," rb ")

print ( f . read ())

f .close ()

以下选项中描述正确的是( D )。

A .若改成 f = open (" A . png "," rt "),程序将正常运行 B .运行后显示" A . png "图片中的文字信息

C .运行后显示" A .png "图片对应的编码信息

D .运行后显示" A .png "图片

5.若某文件的绝对路径为: C :\ Users \ Administrator \ Desktop \ image \ car . TIF ,以下的访方式中错误的是( D )。 A .' C :\\ Users \\ Administrator \\ Desktop \ image \\ car . TIF '

B . r ' C : VUsers \ Administrator \ Desktop Vimage \ car .TIF ' C .'

C :/ Users / Administrator / Desktop / image / car . TIF ' D .' C :\ Users \ Administrator \ Desktoplimage \car .TIF'

6.下列哪项不是 Python 中对文件的读取操作?( B )

A . read  B.readall  C . readlines    D.readline

7.执行如下代码:

f = open("E:/Code/data.ixt", "r")  

s = f.read()  

print(s)  

print(type(s))  

f.close()

以下选项中描述错误的是( C )。

A . print ( s )将输出文本文件的内容

B . print ( type ( s ))将输出< class ' str '>)表示只读。

C .若将 s = fread ()改为 s = f . readlines (),运行结果一样

D .若将 a = f . read ()改为 s = f . readlines (), print ( type ( s ))将输出<class ‘list’>

8.使用上下文管理关键字( B )可以自动管理文件对象,不论何种原因,结束该关键字中的语句块,都能保证文件被正确关闭。

 A . open     B . with     C . read     D . write

9.关于Python文件的'+'打开模式,以下选项中描述正确的是( D )

A .只读模式

B.追加写模式

C .覆盖写模式功能 

D.与/r/w/a/x 一同使用,在原功能基础上增加同时读写

10.给定列表 Is =|" ABC ","123",3,66,"777"」,其元素包含两种数据类型,则的数暑组织维度是( D )

A .一维数据 B .二维数据 C .多维数据 D .高维数据

11.给定字典 dictl =| A :"100", B :"200", C :300|,则字典 dietl 的数据组织维度是( D )

 A .一维数据  B.二维数据 C .多维数据 D。高维数据

12.以下选项中,不是 Python 中文件操作的相关函数是( C )。

 A . open()B . readlines() C  writelines() D .write ()

13.以下选项中,不是 Python 文件处理. seek ()方法的参数是( A )。

A .-1   B .0  C.1  D .2

14.关于 open ()函数的文件名,以下选项中描述错误的是( B )

A .文件名可以是绝对路径   B.文件名不能是一个目录

C.文件名不能是相对路径 D .文件名对应的文件可以不存在15.以逗号分隔数据,通过 Python 将列表18=[" C 语言"," C ++"," Java "," Python "]写入到 PL . csv 文件(和程序同目录)中,保存内容为 C 语言, C ++, Java , Python 。下列代码正确内是( D )。

A

ls =[" C 语言"," C ++"," Java "," Python "]

f = open (" PL . esv ",' w ')

f . write ( ls )

f . close ()

B .

ls =[" C 语言"," C ++"," Java "," Python "]

f = open (" PL . csv ",' w ')

f . write (',' join (1s))

f . close ()

C

ls =[" C 语言"," C ++"," Java "," Python "]

f = open (" PL . csv ",' r ')

f . write (',' join (1s)) f . close ()

D .

ls =[" C 语言"," C ++"," Java "," Python "]

f = open (" PL . csv ",' w ')

f . writelines (1s)

f . close ()

16.Python标准库 os . path 中用来判断指定路径是否为文件夹的方法是( A )。

 A . isdir    B . isinstance    C . exists   D . isfile

第11GUI界面编程

1.使用()控件类可以在主窗口中创建多行文本框。( D )

 A . Button  B.Entry  C . Frame D.Text

2.要用多个单选按钮构成一个控件组,则应将这些单选按钮的( 属性绑定到同一控制变量。( D )

A . text     B . command    C . value    D . variable

3.按钮 Button 通过以下哪一个属性关联函数或方法?( D )

 A . value     B . font    C . variable    D . command

4.以下哪个选项是设置标签 Label 的字体?( B )

 A . bitmap   B . font  C . image  D . background

5.在 tkinter 中,不能放置标签、按钮等组件的方法是( B )。

A . pack () B . grid () D . geometry () C . place ()

二、判断题

1.在 tkinter 中,标签只能用来显示文本,不能用来显示图像。( X )

2.在 tkinter 中,调用菜单控件的 post ()方法可以使菜单在右击的位置显示。( P )

3.在 tkinter 中有菜单 menu ,则 menu . add _ command ( label ="测试", command = gettime , state = tk . DISABLED )添加了一个不可用的菜单项。( P )

4.在 tkinter 中,当复选框处于选中状态时,所绑定的控制变量的值为数字1或字符1。( P )

5.在 GUI 设计中,复选框往往用来实现非互斥多选的功能,多个复选框之间的选择互不影响。( P )

6.在 GUI 设计中,单选按钮用来实现用户在多个选项中的互斥选择,在同一组内多个选项中只能选择一个,当选择发生变化之后,之前选中的选( P )

7.在 tkinter 中,使用单行文本框输入密码时将 show 属性设置为"*",可以不显示输入的内容,以"*"代替。( P )

8.在 tkinter 中,通过 import tkinter as aa 导入 tkinter 是错误的。( P )

9.在 tkinter 中,布局方法有 pack ()、 replace ()、 grid ()三种方法。( P )

10.Canvas画布控件不可以绘制圆形。()

三、程序设计题1.设计一个界面,显示你喜欢的人物,界面如下:

要求选中人物在标签中显示喜欢这个人物,如果都选择,则显示喜欢所有。

2.设计一个简单的计算器,实现加法功能,具体如图所示。

3.设计一个带菜单的窗口,一级菜单有系统、教学、反馈、帮助,系统的二级菜单有登录系统、修改密码、注销账号和退出,调查的二级菜单有教学评价、作业、成绩录入,反馈的二级菜单有教学反馈、师生互联,帮助没有二级菜单。(具体功能不做要求)

http://www.xdnf.cn/news/199855.html

相关文章:

  • 沐曦玩转 LMDeploy、XTuner 和 InternLM3
  • es2025新特性
  • lmms-eval--微调实战笔记
  • 2.2.2goweb内置的 HTTP 处理程序2
  • Nature Communications 仿生电子天线:赋予机器人敏锐 “触觉”
  • TimDbg
  • AT2401C与RFX2401C问题处理资料
  • 新环境注册为Jupyter 内核
  • Python内置方法干货总结
  • [OS_9] C 标准库和实现 | musl libc | offset
  • 关于消息队列的一些事~
  • LeetCode【剑指offer】系列(图和其他篇)
  • 某校多档口食堂就餐行为可视化分析-Tableau
  • MySQL基础篇 | 1-数据库概述与MySQL安装
  • 常见算法的总结与实现思路
  • 【补题】ACPC Kickoff 2025 F. Kinan The Bank Robber
  • tensor 的计算操作
  • C#核心知识
  • Allegro23.1新功能之如何解冻动态铜皮操作指导
  • Druid监控sql导致的内存溢出
  • [Windows] MousePlus 5.5.9
  • 盈飞无限再出重磅新品 AI版质量智能双星璀璨
  • QML文件中如何创建QML对象并打开
  • 机器学习day3 - KNN的api调用
  • Vue3 项目中 Pinia 与 JavaScript 循环依赖问题深度解析
  • 三小时快速上手TypeScript之接口
  • SoapUi测试1——REST(WebAPi、Json协议/HTTP、Post通讯方式)接口测试
  • 【AI 工业应用 】AI大模型在工业领域(CAD等)的前景与实战
  • 1.8空间几何与场论
  • OpenGL进阶系列21 - OpenGL SuperBible - blendmatrix 例子学习