Python面试题分享(一)

本文介绍了Python面试中常见的基础题目,包括交换变量的两种方法、print函数的使用、input()函数的理解、快速推导式、range与xrange的区别、字符串与列表的相互转换,以及文件的读写操作。通过这些知识点的探讨,帮助读者巩固Python基础知识。

python基础


1. python中如何交换两个变量的值?
def swap(a,b):
temp = a
a = b
b = temp
print(a,b)
def swap2(a,b):
a,b = b,a
print(a,b)

2. print的方法

def print(value, ..., end,..., flush)
end 结尾符号,默认"\n"
flush 是否刷新缓冲区数据到控制台,python的print,默认是将数据写入缓冲区,缓冲区有默认大小,只有数
据大小超出缓冲区限制或者遇到换行符才会写入到控制台

import time
def main():
for i in range(10):
print("*",end="")
time.sleep(1)
if __name__ == '__main__':
main()

3. 简述你对input()函数的理解?
在Python3中,input()获取用户输入,不论用户输入的是什么,获取到的都是字符串类型的。
在Python2中有 raw_input()和input(), raw_input()和Python3中的input()作用是一样的, input()输入的是什
么数据类型的,获取到的就是什么数据类型的。


4. 快速推导式

a = []
for i in range(10):
a.append(str(i))
print(a)
a = [int(x) for x in a]
print(a)
a=[("张三",18),("赵四",19),("王五",20)]
c = {x[1]:x[0] for x in a}
print(c)


5. range和xrange的区别?
python2中有range和xrange, range返回的是一个列表,而xrange的结果是一个生成器,前者是直接开辟一
块内存空间来保存列表,后者是边循环边使用,只有使用时才会开辟内存空间,所以当列表 很长时,使用xrange性能要比range好
python3中range返回的其实是一个可迭代对象(类型是range对象),而不是列表类型。

6.字符串和列表转换

#字符串转列表
str1="abc"
list1 = list(str1)
print(list1)
str2 = "a-b-c"
list2 = str2.split("-")
print(list2)
# 列表转字符串
list3 = ['a', 'b', 'c']
str3 = "".join(list3)
print(str3)
# 以下代码会打印什么?
list4 = [1, 2, 3]
str4 = "*".join(list4)
print(str4)

7.文件读写
由于文件读写时都有可能产生IOError,一旦出错,为了保证无论是否出错都能正确地关闭文件,python中建议使用with open的方法去操作文件

with open(file,mode,encoding) as f:

注意:encoding默认为运行的操作系统的编码
建议根据文件或数据类型选择合适的mode
'b'二进制类型
'r'只读
'w'可读可写

with open("1.txt","r",encoding="utf-8") as f:
# 读取整个文本
f.read()
# 按行读取文本,返回一个生成器对象,每调用一次读取一行
f.readline()
# 按行读取文本,返回一个列表,包含了整个文本内容
f.readlines()

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值