zoukankan      html  css  js  c++  java
  • Python学习日记

    江林楠学习了一下午后给大家呈现的20分钟速成Python——

    一些基本的语法:
    1.python无变量声明 直接a = []即可。
    2.python为对齐语言,用制表符表示语句块的嵌套。
    3.python语句末尾无;
    4.python不用{}表示语句块,而是采用:,如
    if a == b:
    a = c
    for a in b:
    print(a)
    5.a.b的形式的函数调用,可以是对象调用函数(同js),也可以命名空间.函数
    6.单行注释使用#a,多行注释使用"""aaaa"""


    一些用法:

    列表:
    cast = ["a",'b',1,["a",2]]
    cast.insert(0,"honghehe")
    cast.remove('a')
    cast.append('ac')
    myPop = cast.pop(0);#弹出第0个元素,并返回
    if isinstance(cast):#判断是否为列表
    print(cast,end = '')
    列表访问:cast[0],case[1:3](1,2项)
    for a in cast:
    print(a)

    更多的用法请查阅python的BIF(内置函数)

    字符串处理:
    a = "abc adj.b"
    location = a.find('.')
    #结果['abcadj','b']
    b = a.strip().split('.')
    也可(b,c) = a.strip().split('.')
    #恢复为abcadj.b
    d = b + '.' + c


    循环:
    #b为列表,a为列表中每一项
    for a in b:
    xxx
    #相当于0-49,a是迭代器
    for a in range(50):
    xxx
    #一般的while
    count = 0
    while count < 50:
    xxx
    count = count + 1
    建议使用for循环


    函数:
    def funcName(para1,para2 = 0,para3 = 1):
    print(para1);
    有=的参数是可以缺省的
    如果只需传入1,3则调用时需要使用
    funcName(1,para3 = 4)

    命名空间:
    import ab
    含义是导入ab.py
    使用ab中的函数需ab.funcName(paras)


    文件和异常
    #这个标准库与目录相关
    import os
    os.getcwd()
    os.chdir("")

    """异常处理"""
    try:
    data = open("honghehe.txt",w)
    print("aaa",file = data)
    except IOError as err:
    print(str(err))
    pass
    #这句可以不要
    finally:
    #locals为当前作用域中的变量集合
    if 'data' in locals():
    data.close()
    比较通用的:
    #与finally等价,自动判定data in locals()
    try
    with open("honghehe.txt") as data1, open("hhe.txt") as data2:
    print("aaa",file = data)
    print("bb",file = data2)
    except IOError as err
    print(str(err))

    读文件:r为默认模式,可不写
    data = open("honghehe.txt",'r')
    print(data.readline(),end = '')
    #可以把文件的data看做一个一行为一个元素的列表
    for each_line in data:
    xxx


    腌制数据:
    import pickle
    #wb是二进制打开
    with open("honghehe.txt",'wb') as fp:
    pickle.dump(mydata,fp)
    with open("honghehe.txt",'wb') as fp:
    mydata = pickle.load(fp)
    这样对应的文件读写为python默认格式,有利于将数据输入输出一般化

    排序
    a.sort()
    #a不变
    b = sorted(a)

    推导列表(映射):将a列表通过func映射为b
    b = [func(each) for each in a]

    集合:
    与数学定义一致,列表中的无重复项
    除去b中所有重复的元素,排序不变
    c = set(b)


    字典:
    myDic = {}
    #或者
    myDic = dict()

    myDic['a'] = 'honghehe'
    myDic['b'] = 'xixi'
    myDic['c'] = ['kakashi','sasuke']

    定义时直接:(相当于一个json)
    myDic = {'a':'honghehe','b':'xixi','c':['kakashi','sasuke']}

    类:
    属性:成员变量
    方法:成员函数
    继承方式,在类名后面用括号打出所继承的类。
    class myClass(list):
    def _init_(self,m_name = '',m_time = []):
    self.name = m_name
    #这句话即将myClass的对象扩展为一个列表,可以使用列表的一切功能,也可以用一个已有的列表m_time初始化
    self.extend(m_time)

    def mySorted():
    return sorted(self.m_time)

    Python构建:

    在.py同目录文件夹下创建setup.py文件

    from distutils.core import setup

    setup{
    name = ''
    version =
    #需要发布的元数据,即.py文件名
    py_modules = ['a','b']
    author = 'jln'
    author_email =
    url =
    description =
    }

    建好后,命令行输入:
    python3 setup.py sdist
    成功后:
    sudo python3 setup.py install

    然后只需要import a等语句就可以使用安装好的python包了

    发布python包
    python3 setup.py register
    setup.py sdist upload

    具体地安装和上传请见
    headfirst 41-48页

  • 相关阅读:
    SpringMVC中利用@InitBinder来对页面数据进行解析绑定
    转型新零售必看:线下零售的运营模型
    主流CTR预估模型的演化及对比
    tensorflow创建自定义 Estimator
    构建分布式Tensorflow模型系列:CVR预估之ESMM
    tensorflow tfdbg 调试手段
    推荐系统算法学习(一)——协同过滤(CF) MF FM FFM
    CTR预估算法之FM, FFM, DeepFM及实践
    深度学习在美团搜索广告排序的应用实践
    Redis集群搭建最佳实践
  • 原文地址:https://www.cnblogs.com/juicygroup/p/3436244.html
Copyright © 2011-2022 走看看