zoukankan      html  css  js  c++  java
  • Python自动化五--函数补充,常用模块

    1.内置函数

    python内置的一些函数:

    print()#输出函数
    input()#输入函数
    int() #将一个字符串或数字转换为整型
    dict() #创建一个字典
    set() #创建一个集合
    list() #将元组转换为列表
    str()#返回一个对象的string格式
    len() #返回对象(字符、列表、元组等)长度或项目个数
    open() #打开一个文件,创建一个 file 对象
    tuple() #将列表转换为元组
    type() #返回对象的类型
    max() #返回字符串中最大的字母
    dir() #返回当前范围内的变量、方法和定义的类型列表
    sorted() #函数对所有可迭代的对象进行排序操作
    #reverse = True 降序 ,reverse = False 升序(默认)。
    print(chr(97))#打印数字对应的ascii
    print(ord('b'))#打印字符串对应的ascii码
    round() #保留几位小数
    eval() #python执行代码
    exec() #执行python代码
    
    enumerate()#函数用于将一个可遍历的数据对象(如列表、元组或字符串)组合为一个索引序列,同时列出数据和数据下标,一般用在 for 循环当中。
    seq = ['one', 'two', 'three']
    for i, element in enumerate(seq):
        print i, element
    
    zip() #将可迭代的对象作为参数,将对象中对应的元素打包成一个个元组,然后返回由这些元组组成的列表
    a = [1,2,3]
    b = [4,5,6]
    zipped = zip(a,b)     # 打包为元组的列表
    [(1, 4), (2, 5), (3, 6)]
    

    format() 字符串格式化函数 优点是解决参数过多时,赋值混乱的情况

    msg='欢迎光临{name},今天的日期是{today}'
    msg=msg.format(name='hi',today=datetime.datetime.today())
    print(msg)
    
    sql='insert into my_user value (%s,%s,%s,%s,%s)'%(id,name,sex,addr,phone)
    sql='insert into{} value{}'.format('abc,','bcd')
    
    format_map()
    d={'name':'小黑','sex':'不知道'}
    words='名字:{name},性别:{sex}'.format_map(d)
    print(words)
    

    字符集

    电脑只认识二进制 0 1
    ASCII码  A=65   a=97   美国人创造
    gb2312  gbk  unicode  utf-8    存储中文字符
    unicode 通用编码  所有字符一律2个字节
    python2 默认编码 ascii码
    python3 默认编码  utf_8
    

    局部变量:在函数里面定义的变量都是局部变量,出了函数之后就不能用了

    全局变量:在文件最上面定义的这个变量,就是全局变量

    可变参数 * 非必填,对参数个数没有限制

    ** 传参数,把参数放在字典里,必须用关键字传参

    def my(name,sex='男',*args,**kwargs):
        print(name)
        print(args)
        print(sex)
        print(kwargs)
    
    my('xiaohei','hhh','args','args2',k1='v1',k2='v2')
    

    random.sample() 随机选取指定个元素

    import  random
    res=random.sample(range(1,34),6)
    print(res)
    

    列表推导式

    res=[26,7,18,27,32,28]
    #列表生成式,列表推导式
    res=[str(i).zfill(2) for i in res]
    print(res)
    
    2.模块

    模块是一个包含所有你定义的函数和变量的文件,其后缀名是.py。模块可以被别的程序引入,以使用该模块中的函数等功能。

    2.1 1 标准模块

    python自带的模块就是标准模块,也就是可以直接import进来的就是标准模块

    import json
    import random
    import datetime
    import time
    import os
    

    2.12 第三方模块

    别人写好的模块,你安装完之后就能用

    安装途径:

    1. pip install pymysql
    #1、pip命令不存在的,把python安装目录下的scrips加入环境变量
    python2  -m pip install xxxx
    python3  -m pip install xxxx
    

    2.手动安装

    ​ (1).whl文件
    1、先从python官网上下载安装文件
    2、pip install c://xxx/xxxx/xxx.whl
    (2) .tar.gz文件
    1、先从python官网上下载安装文件
    2、解压
    3、在命令行里面进入到解压之后的文件夹中
    4、python setup.py install

    2.13.自己写的python文件

    2.2 常用模块

    import os

    os.getcwd()#获取当前的路径
    os.mkdir('spz1') #创建文件夹
    os.makedirs('stu\laowang') #若父目录不存在,会自动创建
    os.rmdir('d:\SJ1\') #删除文件夹
    os.remove('d:\SJ1\') #删除指定路径文件
    os.listdir(r'd:\') #获取当前目录下的文件
    os.walk() #通过在目录树中游走输出在目录中的文件名,向上或者向下。
    os.path.join('nhy123','test0','a.txt')#拼接路径,它会自动识别路径分隔符
    os.sep()#当前系统的路径分隔符
    os.path.dirname('e:\nhy123\test0\a.txt'))#获取父目录的路径os.path.getsize('e:\nhy123\test0\a.txt') #获取文件大小的
    os.path.exists('code')#判断文件、文件夹是否存在
    os.path.isdir('e:\')  #判断是否是文件夹,如果文件夹不存在的话,会返回False
    os.path.isfile(r'e:\nhy123\test0\a.txt')#判断是否是文件,如果文件不存在的话,会返回False
    os.path.split(r'e:
    hy123	est0a.txt')#分割文件名和路径的
    

    小例子---把末尾是偶数的文件夹中,创建一个a.txt,里面随便写点东西

    for dir in os.listdir('d:\shangjie'):
        if int(dir[-1])%2==0:
            ads_path=r'd:\shangjie\%s\a.txt'%dir
            with open(ads_path,'w') as fw:
                fw.write('test')
    
     for cur,dirs,files in os.walk(r'd:\shangjie'):
          print(cur,dirs,files)
          for f in files:
              new_file_name=f+'.bak'
              old_file_name=os.path.join(cur,f)
              os.rename(old_file_name,new_file_name)
    

    import time 日期相关

    #时间戳  从Unix元年开始到现在的秒数
    #格式化好的时间  2018-07-01
    #时间元祖
    print(time.time()) #获取当前时间戳
    print(time.strftime('%Y-%m-%d %H:%M:%S'))
    print(time.gmtime()) #把时间戳转成时间元祖  如果不传时间戳,去的是标准时区的
    print(time.localtime()) #把时间戳转成时间元祖   如果不传时间戳,去的是当前时区
    

    小例子---时间戳与时间格式互转函数

    #1、时间戳转格式化好的时间
    	# 1、首先要把时间戳转成时间元组
    	# 2、再把时间元组转成格式化好的时间
    def timestampToStr(timestamp=None,format='%Y-%m-%d %H:%M:%S'):
    	if timestamp:
    		time_tuple = time.localtime(timestamp)  # 转成时间元组
    		return time.strftime(format,time_tuple) #把时间元组,转成格式化好的时间
    	return time.strftime(format)
    
    #2、格式化好的时间,转时间戳,
    	#1、首先要把格式化好的时间 转成时间元组
    	#2、再把时间元组转成时间戳
    def strToTimestamp(format_time=None,format='%Y%m%d%H%M%S'):
    	if format_time:
    		time_tuple = time.strptime(format_time, format)#把格式化好的时间,转成时间元组
    		return int(time.mktime(time_tuple))
    	return int(time.time())
    
  • 相关阅读:
    JNI和NDK的关系
    JNI和NDK的关系
    Android SDK结构分析
    设计模式:单例模式
    编程规范:占位符
    设计模式:工厂模式
    代码整洁之道----读书笔记
    个人编程规范
    装饰器函数
    异常处理
  • 原文地址:https://www.cnblogs.com/tudouxifan/p/9270505.html
Copyright © 2011-2022 走看看