1、下面哪个不是Python合法的标识符?(B)
A、int32
B、40XL
C、self
D、name
python中的标识符:
1)第一个字符必须是字母表中字母或下划线 _ 。
2)标识符的其他的部分由字母、数字和下划线组成。
3)标识符对大小写敏感。
4)不可以是python中的关键字,如False、True、None、class等。
注意:self不是python中的关键字。类中参数self也可以用其他名称命名,但是为了规范和便于读者理解,推荐使用self。
2、执行下面代码,请问输出结果为( A )
name = "顺顺" def f1(): print(name) def f2(): name = "丰丰" f1() f1() f2()
A、顺顺 顺顺
B、丰丰 丰丰
C、顺顺 丰丰
D、丰丰 顺顺
3、下述字符串格式化语法正确的是?
A、'GNU's Not %d %%' % 'UNIX'
B、'GNU\'s Not %d %%' % 'UNIX'
C、'GNU's Not %s %%' % 'UNIX'
D、'GNU\'s Not %s %%' % 'UNIX'
python里面%d表数字,%s表示字符串,%%表示一个%;
单引号内嵌套单引号需要转义字符\;单引号内嵌套双引号不需要转义字符;
双引号内嵌套双引号需要转义字符\;双引号内引用单引号不需要转义字符;
4、关于Python中的复数,下列说法错误的是:C
A、表示复数的语法是real + image j
B、实部和虚部都是浮点数
C、虚部必须后缀j,且必须是小写
D、方法conjugate返回复数的共轭复数
正确答案选 C。
选项 A:Python 中复数的表示方法;
选项 B:复数的实部与虚部均为浮点数;
选项 C:虚部的后缀可以是 “j” 或者 “J”;
选项 D:复数的 conjugate 方法可以返回该复数的共轭复数。
5、在python中,使用open方法打开文件,语法如下:
open(文件名,访问模式) 如果以二进制格式打开一个文件用于追加,则访问模式为:( C )
A、rb
B、wb
C、ab
D、a
指定对文件打开方式即文件内容操作方式
"r", 只读 "w", 可写 "a", 追加 "rb", 二进制读 "wb", 二进制写 "ab":,二进制追加
6、关于Python内存管理,下列说法错误的是 ( B )
A、变量不必事先声明
B、变量无须先创建和赋值而直接使用
C、变量无须指定类型
D、可以使用del释放资源
本题答案选 B,原因如下:
Python 是弱类型脚本语言,变量就是变量,没有特定类型,因此不需要声明。
但每个变量在使用前都必须赋值,变量赋值以后该变量才会被创建。在赋值的同时变量也就创建了
用 del 语句可以释放已创建的变量(已占用的资源)。
7、下面程序的功能是什么?( A )
def f(a, b): if b == 0: print(a) else: f(b, a%b) a,b = input("Enter two natural numbers: ") print(f(a, b))
A、求 AB最大公因数
B、求AB最小公约数
C、求A%B
D、求A/B
a % b 是求余数
辗转相除法,又称欧几里得算法,以除数和余数反复做除法运算,当余数为 0 时,取当前算式除数为最大公约数。
最小公倍数=两整数的乘积➗最大公约数
input()不能同时赋值两个字符串
8、以上程序要求用户输入二进制数字0/1并显示之,请指出程序中代码第几行存在错误:( AD )
1.bit = input("Enter a binary digit:")
2.if bit = 0 or 1:
3. print "your input is" ,bit
4.else
5. print "your input is invalid"
A、4
B、5
C、3
D、2
由 print 的格式可知此代码在 Python2.x 下执行,并且第 2 行与第 4 行有语法错误,正确的代码如下:
bit = input("Enter a binary digit:") if bit == 0 or bit == 1: print "your input is" ,bit else: print "your input is invalid"
注意第 2 行千万不能写成:
if bit == 0 or 1: #相当于 if (bit == 0) or 1:
因为以上条件语句不管 bit 为何值,都恒为真!
还有第 4 行的 else 后需要加上冒号。
9、若 a = range(100),以下哪些操作是合法的? (A B C D)
A、a[-3]
B、a[2:13]
C、a[::3]
D、a[2-3]
实际上是a[start:end:step]
根据a=range(100)可得start的默认值是0,end的默认值是99,step的默认值是1。
range(100)表示从0到99共一百个数
a[-3]和a[2-3]意味着倒数第三个数和倒数第一个数 分别是97 99
a[::3] start0 end99 step3 依次是0 3 6 9一直到99 步长为3
a[2:13]从a[2]到a[12] 不包括13,前闭后开
10、若 a = (1, 2, 3),下列哪些操作是合法的? (A B D) 元组:左闭右开
A、a[1:-1]
B、a*3
C、a[2] = 4
D、list(a)
如果a[-1] = (3), tuple 是一个不可改变的list,所以[1:-1],就是从1开始取,取不到-1,就是从第二个取值,取到倒数第二个
a[1:-1] ---->(2,) 元组必须带逗号,不带逗号会被误认为为int类型而不是元组
a*3---->(1,2,3,1,2,3,1,2,3) a本身没变,a*3是一个新的元组,已经不是a了
a是元组不可改变
list(a)----->[1,2,3]数组和列表可以相互转换