python基础语法练习题-Python基础语法小题目

本文讲解了Python中复数的基本语法、实部和虚部的处理,以及字典的创建方法。还涉及了脚本参数传递、解释型语言特性、协程理解误区、装饰器应用和字符串转义等知识点。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

01_7.26 Python小课堂来啦~

Tips:

部分题目没有特别说明,默认使用python3环境即可。有特别说明的,建议py2和py3都试下。

260837800539

4.关于Python中的复数,下列说法错误的是()

A.表是复数的语法是real + image j

B.实部和虚部都是浮点数

C.虚部必须后缀j,且必须小写

D.方法conjugate返回复数的共轭复数

5.以下不能创建一个字典的语句是()

A.dict1 = {}

B.dict1 = {}

C.dict3 = {[1,2,3]: "uestc”}

D.dict4 = {(1,2,3): "uestc”}

6.python my.py v1 v2 命令运行脚本,通过 from sys import argv如何获得v2的参数值?

A.argv[0]

B.argv[1]

C.argv[2]

D.argv[3]

7.下面代码运行结果?

a = 1

try:

a += 1

except:

a += 1

else:

a += 1

finally:

a += 1

print(a)

打印结果:4

8.下列代码运行结果是?

a = 'a'

print(a > 'b' or 'c')

打印结果:c

9.What gets printed by the code snippet below?()

import math

print math.floor(5.5)

py2打印结果:5.0

py3打印结果:5

10.What gets printed?()

nums = set([1,1,2,3,3,3,4,5])

print(len(nums))

打印结果:5

11.下面代码运行后,a、b、c、d四个变量的值,打印结果分别是?

import copy

a = [1, 2, 3, 4, ['a', 'b']]

b = a

c = copy.copy(a)

d = copy.deepcopy(a)

a.append(5)

a[4].append('c')

分析如下:

a = [1, 2, 3, 4, ['a', 'b']]

b = a ? ? # 引用,除非直接给a重新赋值,否则a变则b变,b变则a变

c = copy.copy(a) ? # 浅复制,只会拷贝父对象,不会拷贝父对象中的子对象,所以若a的子对象变则c 变,但是父对象改变,c不会变

d = copy.deepcopy(a) #深拷贝,完全拷贝,完全独立于原对象,a变也不变

a.append(5) # 改变父对象

a[4].append('c') ?#改变父对象中的?['a', 'b']子对象

打印结果:

a=[1, 2, 3, 4, ['a', 'b','c'],5]

b=[1, 2, 3, 4, ['a', 'b','c'],5]

c=[1, 2, 3, 4, ['a', 'b','c']]

d=[1, 2, 3, 4, ['a', 'b']]

12.解释型语言的特性有什么?

如,非独立,效率低。

Python不是一门纯粹的解释型语言,例如Cpython中间编译生成pyc文件,然后再运行pyc,也是有编译型语言特点的,其实所有语言本身并无编译解释之分,只是取决支持它的执行环境是解释器,还是编译器。

参考这两篇理解:

13.下列对协程的理解错误的是?

A.一个线程可以运行多个协程

B.协程的调度由所在程序自身控制

C.Linux中线程的调度由操作系统控制

D.Linux中协程的调度由操作系统控制

14.有如下函数定义,执行结果正确的是?

def dec(f):

n = 3

def wrapper(*args,**kw):

return f(*args,**kw) * n

return wrapper

@dec

def foo(n):

return n * 2

A.foo(2) == 12

B.foo(3) == 12

C.foo(2) == 6

D.foo(3) ==6

解释:

装饰器本身是一个函数,是在不改变待装饰函数代码情况下,增加额外功能,其返回值是已装饰的函数对象。

装饰器的作用是把原函数foo()(待装饰函数)赋值给dec()(装饰器),再把返回值--wrapper()(已装饰函数)重新赋值给foo();

def wrapper(2):

return foo(2)*3

函数执行结果为:foo(2) = wrapper(2) = foo(2)*3 = 2*2*3 = 12

15.What gets printed?()

print(r" woow")

A.new line then the string: woow

B.the text exactly like this: r" woow"

C.the text like exactly like this: woow

D.the letter r and then newline then the text: woow

E.the letter r then the text like this: nwoow

16.若 a = range(100),以下哪些操作是合法的?

A.a[-3]

B.a[2:13]

C.a[::3]

D.a[2-3]? ? #仔细看索引

17.__new__和__init__的区别,说法正确的是?

A.__new__是一个静态方法,而__init__是一个实例方法

B.__new__方法会返回一个创建的实例,而__init__什么都不返回

C.只有在__new__返回一个cls的实例时,后面的__init__才能被调用

D.当创建一个新实例时调用__new__,初始化一个实例时用__init__

18.下列代码执行结果是?

[i**i for i in xrange(3)]

A.[1, 1, 4]

B.[0, 1, 4]

C.[1, 2, 3]

D.(1, 1, 4)

持续更新中...

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值