Explorar o código

更新了更新日志并开始着手完成Python面试题大全

jackfrued %!s(int64=6) %!d(string=hai) anos
pai
achega
8396987a72
Modificáronse 3 ficheiros con 147 adicións e 0 borrados
  1. 137 0
      Python面试题大全及参考答案.md
  2. BIN=BIN
      res/donation2.png
  3. 10 0
      更新日志.md

+ 137 - 0
Python面试题大全及参考答案.md

@@ -0,0 +1,137 @@
+## Python面试题
+
+1. 说一说Python中的新式类和旧式类有什么区别。
+
+2. Python中`is`运算符和`==`运算符有什么区别?
+
+3. Python中如何动态设置和获取对象属性?
+
+4. Python如何实现内存管理?有没有可能出现内存泄露的问题?
+
+5. 阐述列表和集合的底层实现原理。
+
+6. 现有字典`d = {'a': 24, 'g': 52, 'i': 12, 'k': 33}`,如何按字典中的值对字典进行排序。
+
+7. 实现将字符串`k1:v1|k2:v2|k3:v3`处理成字典`{'k1': 'v1', 'k2': 'v2', 'k3': 'v3'}`。
+
+8. 写出生成从`m`到`n`公差为`k`的等差数列的生成器。
+
+9. 请写出你能想到的反转一个字符串的方式。
+
+10. 不使用任何内置函数,将字符串`'123'`转换成整数`123`。
+
+    ```Python
+    nums = {'0': 0, '1': 1, '2': 2, '3': 3, '4': 4, '5': 5, '6': 6, '7': 7, '8': 8, '9': 9}
+    total = 0 
+    for ch in '123': 
+        total *= 10 
+        total += nums[ch]
+    print(total)
+    ```
+
+11. 写一个返回bool值的函数,判断给定的非负整数是不是回文数。
+
+12. 用一行代码实现求任意非负整数的阶乘。
+
+13. 写一个函数返回传入的整数列表中第二大的元素。
+
+14. 删除列表中的重复元素并保留原有的顺序。
+
+15. 找出两个列表中的相同元素和不同元素。
+
+16. 列表中的某个元素出现次数占列表元素总数的半数以上,找出这个元素。
+
+17. 实现对有序列表进行二分查找的算法。
+
+18. 输入年月日,输出这一天是这一年的第几天。
+
+19. 统计一个字符串中各个字符出现的次数。
+
+20. 在Python中如何实现单例模式?
+
+21. 下面的代码会输出什么。
+
+    ```Python
+    class A:
+        
+        def __init__(self, value):
+            self.__value = value
+        
+        @property
+        def value(self):
+            return self.__value
+    
+    
+    a = A(1)
+    a.__value = 2
+    print(a.__value)
+    print(a.value)
+    ```
+
+22. 实现一个记录函数执行时间的装饰器。
+
+23. 写一个遍历指定目录下指定后缀名的文件的函数。
+
+24. 有如下所示的字典,请将其转换为CSV格式。
+
+    转换前:
+
+    ```Python
+    dict_corp = {
+        'cn': {'id': 1, 'name': '土豆', 'desc': '土豆', 'price': {'gold': 20, 'kcoin': 20}},
+        'en': {'id': 1, 'name': 'potato', 'desc': 'potato', 'price': {'gold': 20, 'kcoin': 20}},
+        'kr': {'id': 1, 'name': '감자', 'desc':'감자', 'price': {'gold': 20, 'kcoin': 20}},
+        'jp': {'id': 1, 'name': 'ジャガイモ', 'desc': 'ジャガイモ', 'price': {'gold': 20, 'kcoin': 20}},
+    }
+    ```
+
+    转换后:
+
+    ```CSV
+    ,id,name,desc,gold,kcoin  
+    cn,1,土豆,土豆,20,20
+    en,1,potato,potato,20,20
+    kr,1,감자,감자,20,20
+    jp,1,ジャガイモ,ジャガイモ,20,20
+    ```
+
+25. 有如下所示的日志文件,请用Python程序或Linux命令打印出独立IP并统计数量。
+
+    ```
+    221.228.143.52 - - [23/May/2019:08:57:42 +0800] ""GET /about.html HTTP/1.1"" 206 719996
+    218.79.251.215 - - [23/May/2019:08:57:44 +0800] ""GET /index.html HTTP/1.1"" 206 2350253
+    220.178.150.3 - - [23/May/2019:08:57:45 +0800] ""GET /index.html HTTP/1.1"" 200 2350253
+    218.79.251.215 - - [23/May/2019:08:57:52 +0800] ""GET /index.html HTTP/1.1"" 200 2350253
+    219.140.190.130 - - [23/May/2019:08:57:59 +0800] ""GET /index.html HTTP/1.1"" 200 2350253
+    221.228.143.52 - - [23/May/2019:08:58:08 +0800] ""GET /about.html HTTP/1.1"" 206 719996
+    221.228.143.52 - - [23/May/2019:08:58:08 +0800] ""GET /news.html HTTP/1.1"" 206 713242
+    221.228.143.52 - - [23/May/2019:08:58:09 +0800] ""GET /products.html HTTP/1.1"" 206 1200250
+    ```
+
+26. 请写出从HTML页面源代码中获取a标签href属性的正则表达式。
+
+27. 正则表达式对象的`search`和`match`方法有什么区别?
+
+28. 当做个线程竞争一个对象且该对象并非线程安全的时候应该怎么办?
+
+29. 说一下死锁产生的条件以及如何避免死锁的发生。
+
+30. 请阐述TCP的优缺点。
+
+31. HTTP请求的GET和POST有什么区别?
+
+32. 说一些你知道的HTTP响应状态码。
+
+33. 简单阐述HTTPS的工作原理。
+
+34. 阐述Django项目中一个请求的生命周期。
+
+35. Django项目中实现数据接口时如何解决跨域问题。
+
+36. Django项目中如何对接Redis高速缓存服务。
+
+37. 请说明Cookie和Session之间的关系。
+
+38. 说一下索引的原理和作用。
+
+39. 是否使用过Nginx实现负载均衡?用过哪些负载均衡算法?

BIN=BIN
res/donation2.png


+ 10 - 0
更新日志.md

@@ -1,5 +1,15 @@
 ## 更新日志
 
+### 2019年9月15日
+
+1. 将微信打赏所得收入通过腾讯公益捐赠给国家级贫困大学生。
+
+   ![](./res/donation2.png)
+
+2. 开始更新和调整第1天到第15天的内容。
+
+3. 开始整理大家期待已久的《Python面试题大全及参考答案》。
+
 ### 2019年8月12日
 
 1. 发布了《使用Hexo搭建自己的博客》一文。