内容简介:print() 用上述代码你应该可以总结一下。Python3中的input() 用 sys.stdin.readline() 实现。
print() 用 sys.stdout.write()
实现
import sys print('hello') sys.stdout.write('hello') print('world') # 结果: # hello # helloworld 复制代码
上述代码你应该可以总结一下。
- sys.stdout.write()结尾没有换行,而print()是自动换行的。
- write()只接收字符串格式的参数。
- print()能接收多个参数输出,write()只能接收一个参数输出。
input
Python3中的input() 用 sys.stdin.readline() 实现。
import sys a = sys.stdin.readline() print(a, len(a)) b = input() print(b, len(b)) # 结果: # hello # hello # 6 # hello # hello 5 复制代码
第2题:range 和 xrange 的区别?
首先我们看看range:
生成一个序列 一个生成器
两者用法相同,不同的是 range 返回的结果是一个列表,而 xrange 的结果是一个生成器,前者是 直接开辟一块内存空间来保存列表,后者是边循环边使用,只有使用时才会开辟内存空间,所以相对来说,xrange比range性能优化很多,因为他不需要一下子开辟一块很大的内存,特别是数据量比较大的时候。
注意:
- xrange和range这两个基本是使用在循环的时候。
- 当需要输出一个列表的时候,就必须要使用range了。
第3题: 4G 内存怎么读取一个 5G 的数据?
方法一
可以通过生成器,分多次读取,每次读取数量相对少的数据(比如 500MB)进行处理,处理结束后在读取后面的 500MB 的数据。
def get_lines(): # 生成器 with open('big.data', 'r') as f: while True: data = f.readlines(100) if data: yield data else: break f = get_lines() # 迭代器对象 print(next(f)) print(next(f)) print(next(f)) 复制代码
方法二
可以通过 linux 命令 split 切割成小文件,然后再对数据进行处理,此方法效率比较高。可以按照行数切割,可以按照文件大小切割。
第4题:在except中return后还会不会执行finally中的代码?怎么抛出自定义异常?介绍一下 except 的作用和用法?
会继续处理 finally 中的代码;用 raise 方法可以抛出自定义异常
- except: #捕获所有异常
- except: <异常名>: #捕获指定异常
- except:<异常名 1, 异常名 2> : 捕获异常 1 或者异常 2
- except:<异常名>,<数据>:捕获指定异常及其附加的数据
- except:<异常名 1,异常名 2>:<数据>:捕获异常名 1 或者异常名 2,及附加的数据
第5题:在 Python 中输入某年某月某日,判断这一天是这一年的第几天?(可以用 Python 标准库)
方法一
year = int(input('请输入4位数字的年份:')) #获取年份 month = int(input('请输入月份:')) #获取月份 day = int(input('请输入是哪一天:')) #获取日 if month == 1: count = day elif month == 2: count = 31 + day elif (month >= 3) and ((year % 4 == 0 and year % 100 != 0) or year % 400 == 0): if month == 3: count = 31 + 29 + day if month == 4: count = 31 + 29 + 31 + day if month == 5: count = 31 + 29 + 31 + 30 + day if month == 6: count = 31 + 29 + 31 + 30 + 31 + day if month == 7: count = 31 + 29 + 31 + 30 + 31 + 30 + day if month == 8: count = 31 + 29 + 31 + 30 + 31 + 30 + 31 + day if month == 9: count = 31 + 29 + 31 + 30 + 31 + 30 + 31 + 31 + day if month == 10: count = 31 + 29 + 31 + 30 + 31 + 30 + 31 + 31 + 30 + day if month == 11: count = 31 + 29 + 31 + 30 + 31 + 30 + 31 + 31 + 30 + 31 + day if month == 12: count = 31 + 29 + 31 + 30 + 31 + 30 + 31 + 31 + 30 + 31 + 30 + day else: if month == 3: count = 31 + 28 + day if month == 4: count = 31 + 28 + 31 + day if month == 5: count = 31 + 28 + 31 + 30 + day if month == 6: count = 31 + 28 + 31 + 30 + 31 + day if month == 7: count = 31 + 28 + 31 + 30 + 31 + 30 + day if month == 8: count = 31 + 28 + 31 + 30 + 31 + 30 + 31 + day if month == 9: count = 31 + 28 + 31 + 30 + 31 + 30 + 31 + 31 + day if month == 10: count = 31 + 28 + 31 + 30 + 31 + 30 + 31 + 31 + 30 + day if month == 11: count = 31 + 28 + 31 + 30 + 31 + 30 + 31 + 31 + 30 + 31 + day if month == 12: count = 31 + 28 + 31 + 30 + 31 + 30 + 31 + 31 + 30 + 31 + 30 + day print('第' + str(count) + '天') 复制代码
互联网找到了几个解法
方法二
import datetime y = int(input('请输入4位数字的年份:')) # 获取年份 m = int(input('请输入月份:')) # 获取月份 d = int(input('请输入是哪一天:')) # 获取“日” targetDay = datetime.date(y, m, d) # 将输入的日期格式化成标准的日期 dayCount = targetDay - datetime.date(targetDay.year - 1, 12, 31) # 减去上一年最后一天 print('%s是%s年的第%s天。' % (targetDay, y, dayCount.days)) 复制代码
方法三
import datetime dtime = input("请输入求天数的日期(20191111):") tnum = datetime.datetime.strptime(dtime,'%Y%m%d').strftime("%j") print(dtime + "在一年中的天数是: " + tnum + "天。") 复制代码
面试系列,本次写到10篇截止
对于python面试来说,基础占了很大的一个部分,你只需要夯实基础即可
剩下的多数为算法部分,我们半年后继续写完后续涉及算法的章节。
她专科学历 27岁从零开始学习c,c++,python编程语言 29岁编写百例教程 30岁掌握10种编程语言, 用自学的经历告诉你,学编程就找梦想橡皮擦
欢迎关注她的公众号,非本科程序员
以上所述就是小编给大家介绍的《朋友去面试Python工程师,又带回来几道基础题,Python面试题No10》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!
猜你喜欢:- 面试的时候,面试官到底在干什么?应届生面试软件工程师,你要注意什么?
- 测试工程师面试解析~
- 如何去面试软件测试工程师?面试官教你怎么回答!
- 提前批算法工程师面试之路
- 面试Python工程师会问哪些问题?需要准备什么?|看面试官怎么说
- Java 工程师面试复习指南
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
PHP经典实例(第3版)
David Sklar、Adam Trachtenberg / 苏金国、丁小峰 / 中国电力出版社 / 2015-7 / 128.00
想要掌握PHP编程技术?或者想要学习如何完成一个特定的任务?那么一定要先看看《PHP经典实例(第3版)》。本书介绍了专门为PHP 5.4和5.5修订的350个经典技巧,并提供了丰富的示例代码。特别是对生成动态Web内容的解决方案做了全面更新,从使用基本数据类型到查询数据库,从调用RESTful API到测试和保护网站安全都有涵盖。 各个技巧都提供了示例代码,可以免费使用,另外还讨论了如何解决......一起来看看 《PHP经典实例(第3版)》 这本书的介绍吧!
RGB转16进制工具
RGB HEX 互转工具
在线进制转换器
各进制数互转换器