平院Python习题

在读写文件之前,用于创建文件对象的函数是( A )。

A. open B. create C. file D.folder
解析:
open(file, mode=‘r’, buffering=-1, encoding=None, errors=None,
newline=None, closefd=True, opener=None)

Python语言属于( C )

A. 机器语言 B. 汇编语言 C. 高级语言 D. 科学计算语言

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

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

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

A. Python 3.x与Python 2.x兼容
B. Python语句只能以程序方式执行
C. Python是解释型语言
D. Python语言出现得晚,具有其他高级语言的一切优点

设s=“Happy New Year”,则s[3:8]的值为( B)。

A. ‘ppy Ne’ B. ‘py Ne’ C. ‘ppy N’ D. ‘py New’
解析:s下标从0开始,切片左闭右开,空格也算。s[3:8]===[3,8)
平院Python习题_第1张图片

以下关于Python语句的叙述中,正确的是( A)

A. 同一层次的Python语句必须对齐
B. Python语句可以从一行的任意一列开始
C. 在执行Python语句时,可发现注释中的拼写错误
D. Python程序的每行只能写一条语句

下列选项中,不属于Python特点的是( B )。

A. 面向对象 B. 运行效率高 C. 可读性好 D. 开源

已知x=2,语句x*=x+1执行后,x的值是( D )。

A. 2 B. 3 C. 5 D. 6
解析:
x=x*(x+1)

下列程序的输出结果是( C )。

f=open(‘c:\out.txt’,‘w+’)
f.write(‘Python’)
f.seek(0)
c=f.read(2)
print©
f.close()
A. Pyth B.Python C. Py D. th
解释:
seek(0):指针回滚到下标为0的位置
read(2):开始向后读取2个元素

在Python中,正确的赋值语句为( C )。

A. x+y=10 B. x=2y C. x=y=30 D. 3y=x+1

下列表达式中,有3个表达式的值相同,另一个不相同,与其他3个表达式不同的是(C )。

A. “ABC”+“DEF” B. ‘’.join((“ABC”,“DEF”))
C. “ABC”-“DEF” D. ‘ABCDEF’*1

以下关于Python语句的叙述中,正确的是(A )。

A. Python中的变量区分大小写
B. 元组中的元素可以改变
C. 字典中的键可以改变
D. 集合中允许出现相同的元素

下列选项中与s[0:-1]表示的含义相同的是(C )

A. s[-1] B. s[:] C. s[:len(s)-1] D. s[0:len(s)]
解释:
s[0:-1]===[0:-1) 即 除了最后一个元素,其他都包含

下列程序的执行结果是( A )。

class C():
f=10
class C1( C ):
pass
print(C.f,C1.f)
A. 10 10 B. 10 pass C. pass 10 D.运行出错

对于列表L=[1,2,‘Python’,[1,2,3,4,5]],L[-3]的结果是( B )

A. 1 B. 2 C. ‘Python’ D. [1,2,3,4,5]
解析:
’Python‘和[1,2,3,4,5]分别对应一个

14.L.reverse()和L[-1:-1-len(L):-1]的主要区别是( D )

A. L.reverse()和L[-1:-1-len(L):-1]都将列表的所有元素反转排列,没有区别
B. L.reverse()和L[-1:-1-len(L):-1]都不会改变列表L原来内容
C. L.reverse()不会改变列表L的内容,而L[-1:-1-len(L):-1]会改变列表L原来内容
D. L.reverse()会改变列表L的内容,而L[-1:-1-len(L):-1]产生一个新列表,不会改变列表L原来内容

下列程序的执行结果是( D)。

class Point:
x=10
y=10
def init(self,x,y):
self.x=x
self.y=y
pt=Point(20,20)
print(pt.x,pt.y)
A. 10 20 B. 20 10 C. 10 10 D. 20 20
解析:
这里的self.x和self.y表示只对这个Point类里面的x和y操作,并不会对传入的参数产生影响

下列Python程序的运行结果是(C )

s=[1,2,3,4]
s.append([5,6])
print(len(s))
A. 2 B. 4 C. 5 D. 6
解析:
[5,6]是一个整体,当成一个元素对待

已知f=lambda x,y:x+y,则f([4],[1,2,3])的值是(C)

A.[1, 2, 3, 4] B. 10 C. [4, 1, 2, 3] D. {1, 2, 3, 4}
解析:
lambda表达式,相当于精简版的函数,冒号之前的为参数,冒号之后的为函数体
f([4],[1,2,3])===x为[4],y为[12,3]
执行的操作为x+y(在x后追加y) = = =[4,1,2,3]

为了给整型变量x,y,z赋初值10,下面正确的Python赋值语句是(C )。

A.xyz=10 B.x=10 y=10 z=10
C.x=y=z=10 D.x=10,y=10,z=10
解析:要么直接赋值、要么用分号隔开赋值

下列程序的运行结果是(D )。

x=y=10
x,y,z=6,x+1,x+2
print(x,y,z)
A.10 10 6 B.6 10 10 C.6 7 8 D.6 11 12
解析:
x对应6、y对应x+1、z对应x+2。这是序列解包的规则

下列选项中合法的标识符是( A )。

A._7a_b B.break C._a$b D.7ab
解析:
标识符:由字母、数字、下划线组成。其中数字不能开头、
B中break为关键字、C中出现了 $、D中以数字开头

Python不支持的数据类型有(A)。

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

在Python语句行中使用多条语句,语句之间使用 分号( ; ) 分隔
表达式2<=1 and 0 or not 0的值是 True

解析:算术运算符>位运算符>成员测试运算符>关系运算符>逻辑运算符等,
算术运算符遵循“先乘除,后加减”的基本运算原则。
其中<=为算术运算符,and or not为逻辑运算符(not>and>or)
2<=1 and 0 or not 0
(2<=1) and 0 or not 0
False and 0 or True
False or True
True

平院Python习题_第2张图片

语句print(len({}))的执行结果是 0
在Python集成开发环境中,可使用快捷键 F5 运行程序。
{1,2,3,4} - {3,4,5}的值是 {1,2}
当x=0,y=50时,语句z=x if x else y执行后,z的值是 50

解析:
if(x为真) z=x ;else(如果x为假) z=y
① if ② else ③ === 如果②为真则①,否则③
这是三元运算符,其效果等价于:

x,y=0,50
if x:#如果x非零
    z=x
else:#如果x为零
    z=y
print(z)
使用math模块库中的函数时,必须要使用 import math 语句导入该模块
编写程序:求1,3,5……101的和

标准答案:

s=0
for i in range(1,102):
    if i/2 != int(i/2):
        s=s+i
print(s)

我的答案:

n=int(input("请输入整数n:"))
Sum=0
for i in range(1,n+1,2):
    Sum += i
print("%d"%Sum)
编写程序:从控制台输入一个整数n,打印斐波那契数列的前n项。(斐波那契数列的特点是:从第三个数开始,每个数的值是其前两个数之和,如:1 1 2 3 5 8 13 21…)。

标准答案:

n = int(input("输入一个整数:"))
before = 0
current = 0
for i in range(1,n+1):
    if i == 1:
        before = 0
        current = 1
    else:
        temp = current
        current = current + before
        before = temp
    print(current, end=" ")

我的:

a = [1,1]
n=int(input("请输入整数n:"))
for i in range(0,n+1):
    a.append(a[i]+a[i+1])
print(a[0:n])
编写程序输出99乘法表

标准答案:

for i in range(1,10):
    a = 1
    while a <= i:
        print("{0}*{1}={2}".format(a,i,a*i),end="\t")
        a +=1
print()

我的:

for i in range(1,10):
    for j in range(1,i+1):
        print("{0}*{1}={2:02}".format(j,i,i*j),end=" ")
    print("\n")
编写程序:从键盘输入一个数N,输出N的阶乘
def jiecheng(n):
    a=1
    for i in range(1,n+1):
        a*=i;
    print("%d" %a);
x = int(input("请输入n:"))
jiecheng(x)

你可能感兴趣的:(Python)