• 第三章 模块


    1、列举常用模块

      time模块、random模块、os模块、sys模块、re模块、requests模块

      模块:简单来说就是一堆代码来实现某些功能,他们是已经写好的.py文件,只需要用import来调用即可。

      分类:自定义模块、内置标准模块、开源模块

    2、如何安装第三方模块

      pip install 模块名

    3、re模块的match和search的区别?

      re.match之匹配字符串的开头,若开头不匹配,则返回None.

      re.search匹配整个字符串,直到找到一样的。

    4、什么事正则的贪婪匹配?或者正则匹配中的贪婪模式和非贪婪模式的区别。

      贪婪模式就是在整个表达式匹配成功的情况下,尽可能的匹配更多的。

      非贪婪模式就是在整个表达式匹配成功的情况下,尽可能的匹配更少的。

    5、如何生成一个随机数。

      random.random

    6、如何删除一个文件

      os.remove()

    7、logging模块的作用,以及应用场景

      python中logging模块提供了通用的日志系统,方便第三方模块和应用的使用。

    8、json序列化时,可以处理的数据类型有哪些?

      能够处理的数据类型非常有限,字符串,列表,字典,数字,字典中的key只能是字符串类型,如果字典中的值时元组,序列化时回强转成一个列表。因为json在所有语言都通用。

    9、json序列化时,默认遇到中文会转成unicode,如果想保留中文怎么办? 

    import json
    
    dic = {'k1': '你好'}
    str_dic = json.dumps(dic, ensure_ascii = False)
    print(str_dic)

    10、写代码实现查看一个目录下的所有文件

    import os
    
    d = os.getcwd()

    11、用python匹配HTML.tag的时候,<.>和<.?>有什么区别?

      <.>是贪婪匹配,尽可能的匹配更多的字符串。

      <.?>是非贪婪匹配,尽可能匹配更少的字符串。

    12、如何判断一个邮箱合法。

      w[-w.+]*@([A-Za-z0-9][-A-Za-z0-9]+.)+[A-Za-z]{2,14}

    13、请写出以字母下划线开始,以数字结束的正则表达式。

      ^[A-Z].*d$

    14、下面哪些是python开发网络应用的框架

      Django, Flask

    15、写python爬虫都用到了哪些模块,分别是做什么用的?

      

    16、sys.path.append('/root/mods')的作用?

      添加模块路径

    17、列举出python中比较熟悉的爬虫模块。

      Scrapy:强大的爬虫框架,可以满足页面的爬取。

      Crawley:告诉爬取对应网站的内容,支持关系型和非关系型数据库。

      Portia:可视化爬取网页内容。

      newspaper:提取新闻、文章以及内容分析。

      cola:一个分布式爬虫框架。

    18、输入某年某日,判断时这一年的第几天。

    def y_days(inp):
    
        y = int(inp[0:4])
        m = int(inp[5:7])
        d = int(inp[8:])
    
        r = False
        if y % 100 == 0:
            if y % 100 == 0:
                r = True
    
        if y % 4 == 0:
            r = True
    
        if r == True:
            mm = [31, 29, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31]
        else:
            mm = [31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31]
        days = 0
        for i in range(1, 13):
            if i == m:
                for j in range(i - 1):
                    days += mm[j]
    
        return '%s是一年的第%s天' %(inp, (days+d))
    
    
    
    
    
    if __name__ == '__main__':
        inp = input('请输入一个日期:(格式为yyyy-mm-dd)').strip()
        print(y_days(inp))
    请输入一个日期:(格式为yyyy-mm-dd)2019-01-10
    2019-01-10是一年的第10天

    19、使用过哪些python的第三方组件?

      jieba分词,Django, Flask,scrapy,MySPLdb

      

  • 相关阅读:
    [转]ANDROID JNI之JAVA域与c域的互操作
    android 管理Touch事件
    android gesture检测
    android 数据库操作
    android 文件保存
    【转】Android 添加系统服务
    【转】android makefile文件分析
    vlc 编译
    oracle to_date 函数
    ORACLE分页SQL语句(转载)
  • 原文地址:https://www.cnblogs.com/490144243msq/p/11507332.html
Copyright © 2020-2023  润新知