`

Python语法资料汇总

阅读更多
1、python2转python3
python2和python3语法互不兼容!!!
还好python提供了工具!
要转换一个文件夹及其子文件夹中的文件,只需要一句话:
cmd中输入:
python  pythong安装目录/Scripts/2to3-script.py -w  要转的文件夹名称
#例如python  E:/Anaconda3/Scripts/2to3-script.py -w assignment1py3
#其中assignment1py3为文件夹!

其中  -w  表示转换完了写回到原文件,,所以执行前最好是复制一个副本出来
如果要转的文件不是以.py结尾的,,则需要一个个文件去敲代码,比如
python  E:/Anaconda3/Scripts/2to3-script.py -w knn.ipynb



2、python入门资料
cs231n的python介绍:http://cs231n.github.io/python-numpy-tutorial/

Numpy for Matlab users:https://docs.scipy.org/doc/numpy-dev/user/numpy-for-matlab-users.html
numpy推荐直接用ANACONDA套装:https://www.continuum.io/downloads


3、python文件处理
缓存的大小可以在open时设置:
http://stackoverflow.com/questions/3167494/how-often-does-python-flush-to-a-file
示例代码如下:
def processFileLineByLine(filename,outfilename, lineFunc, headLineFunc=None,encoding='utf-8'):
    '''
    将filename中的每一行通过lineFunc转换后输出到outfilename文件中,
    如果对首行有特殊的处理需求,可以设置headLineFunc
    '''
    import codecs
    f = codecs.open(filename, 'r', encoding);
    fo = codecs.open(outfilename, 'w', encoding,buffering=1024*1024);
    if(headLineFunc!=None):
        fo.write(headLineFunc(f.readline()));
        
    while True:
        lines=f.readlines(2048);
        if(not lines or len(lines)==0):
            break;
        for line in lines:
            fo.write(lineFunc(line));
    f.close();
    fo.close();
def changeSplitChar2(filename,outfilename,encoding='utf-8',oldSplitChar='\t',newSplitChar=','): 
    def chchar(line):
        return line.replace(oldSplitChar,newSplitChar);
    processFileLineByLine(filename, outfilename, lineFunc=chchar, encoding=encoding)



4、iterator & generator
参见:http://anandology.com/python-practice-book/iterators.html
generator 是 iterator 的简化版(代码量减少),本质完全相同。
generator以函数形式编写,, 代码运行到 yield x 时输出一个x ,,相当于next(it);
注意:  python3中采用  next(it) , 而非 it.next()的形式;

可以采用 list(it)  生成list

5、python 函数的default value是共享的
http://stackoverflow.com/questions/4841782/python-constructor-and-default-value
http://stackoverflow.com/questions/1132941/least-astonishment-in-python-the-mutable-default-argument
http://effbot.org/zone/default-values.htm
def append(i,a=None):
    if(a is None): a=list()
    a.append(i);
    return a;

# a 在def语句执行时初始化,所以是共享的。。。。。
def append_Wrong(i,a=[]):
    a.append(i)
    return a;

if __name__ == '__main__': 
    print(append(1))  #[1]
    print(append(2))  #[2]
    
    print(append_Wrong(1))  #[1]
    print(append_Wrong(2))  #[1, 2]    


6、列出所有变量
参见http://stackoverflow.com/questions/633127/viewing-all-defined-variables
  • vars() 列出所有变量,为一个dict,  for varName, varValue in vars().items()...
  • dir() 列出所有变量名, 之后可以通过eval(variableName) 来获取变量
  • globals() 全局变量
  • locals() 局部变量


6、python2 的ascii’ codec can’t encode
通过以下语句修改全局设置,参见(内容很详细):http://in355hz.iteye.com/blog/1860787
import sys
reload(sys)
sys.setdefaultencoding('utf-8')

虽然那篇博文中不推荐这么做,但我觉着这个方案没什么不好的,比较utf-8是兼容ascii的,既然原本为ascii的编解码器,那么换为utf-8的编解码器应该没任何问题。

7、python命令行环境变量设置
  • PYTHONIOENCODING=UTF-8 python ***.py  #更改编码
  • export PYTHONPATH=$PYTHONPATH:newpath/subfolder  #增加库路径

分享到:
评论

相关推荐

    【Python典藏】80个Python经典资料汇总

    这些资料涵盖了Python语法、标准库、高级编程、系统管理、Web开发、GUI编程等多个方面,提供了从入门到精通的全方位学习路径。同时,这些资源中的高下载量和好评率表明它们在Python社区中具有很高的认可度,对于想要...

    python学习资料汇总

    【Python学习资料汇总】 这份资料集合为初学者提供了一个全面的Python学习路径,涵盖了从基础概念到高级特性的广泛知识。以下是对各个文档和PDF的详细解析: 1. **Python的类成员和装饰器介绍.docx**:这部分内容...

    20个Python资料汇总

    【标题】"20个Python资料汇总"是一个包含多个Python学习资源的集合,旨在帮助初学者和有一定基础的开发者从入门到进阶全面提升Python技能。这个压缩包可能包含了各种教程、实战项目、代码示例以及理论讲解,为学习者...

    Python基础语法合集.pdf

    python基础语法合集 python基础语法合集TXT python基础语法合集下载 ...python语法汇总 python基础语法及知识总结 python基本语法 python基础语法手册pdf python语法基础知识pdf python基础语法菜鸟教程

    Python基础语法汇总【保姆级小白书】

    我将 Python语法分为14个章节,以下是我对一些Python基础语法的简单描述: 1.Python基础概念: Python是人与计算机交流的语言,编程语言的一种,是面向对象语言 2.变量与数据类型:Python有几种内建的数据类型,包括...

    python 等资料的学习汇总.zip

    课程资料:这部分资料提供了系统化的Python课程,从Python基础语法到进阶技能,内容涵盖Python的核心知识点。通过学习这些课程,你将建立起坚实的Python基础,为后续的学习和应用打下坚实基础。 学习笔记:在学习...

    蓝桥杯大赛 青少年创意编程 Python组 资料集-2022.01.21.pdf

    蓝桥杯大赛 青少年创意编程 Python 组 资料集-2022.01.21.pdf 该资源提供了蓝桥杯大赛青少年创意编程 Python 组的相关知识点和资源汇总。以下是该资源的详细知识点: Python 基础知识 * Python 基础试题:该资源...

    python基础知识汇总

    ### Python基础知识汇总 #### 一、Python中的基本数据类型 Python是一种高级编程语言,支持多种数据类型,这对于理解和使用Python非常重要。以下是最基础的数据类型: ##### 1. 整数 (Integers) - **概念**: ...

    110道Python面试题汇总.rar

    Python是一种广泛使用的高级编程语言,以其简洁明了的语法和强大的功能深受程序员喜爱。...这份"110道Python面试题汇总.pdf"将是你准备面试的重要参考资料,它覆盖了各个层面的问题,帮助你全面复习和巩固Python知识。

    python面试题汇总(

    Python是一种广泛使用的高级编程语言,其语法清晰简洁,有着丰富的数据类型和模块库,非常适合进行快速开发。在面试准备过程中,了解和掌握一些常见的Python面试题对于求职者来说至关重要。以下将详细解释上述文件中...

    python二级资料汇总整理.zip

    标题中的"python二级资料汇总整理.zip"表明这是一个针对Python学习者的资源集合,特别可能是针对Python二级考试的复习材料。 "python-3.9.13-amd64.exe"是Python 3.9.13版本的安装程序,适用于AMD64架构的计算机。...

    110道Python面试题汇总_python教程_

    Python是一种高级、通用的编程语言,以其简洁明了的语法和强大的功能深受程序员喜爱。针对“110道Python面试题汇总”的主题,我们可以深入探讨其中可能涵盖的多个知识点,这些知识点是Python开发者在面试中可能会...

    Python基础语法.pdf

    1. Python语法基础 Python代码通常以.py扩展名保存。Python使用缩进来定义代码块,而不是大括号或其他符号。Python支持多种数据类型,如整型(int)、浮点型(float)、字符串(str)和布尔型(bool)。Python是一种解释型...

    Python开源项目汇总

    以下是根据标题“Python开源项目汇总”和描述中的信息,对2017年30个惊艳的Python开源项目进行的详细解读。 1. 数据分析与科学计算: - Pandas:强大的数据结构和数据分析工具,适用于快速、灵活地处理大型数据集...

    Python常用基础语法(函数)汇总

    Python基础语法(函数)汇总 Python是一种高级语言,它具有简洁、易读、易维护等特点。Python中有许多内置函数,能够帮助开发者快速完成任务。下面将详细介绍Python基础语法中的函数。 一、修改字符串(针对英文...

    110道Python面试题汇总

    python常见110道题汇总 包含具体代码实现以及运行结果 涵盖范围包括语法,通信,算法,线程进程,爬虫,应用等

    学习Python过程中的知识汇总

    Python是一种高级、通用的编程语言,以其简洁明了的语法和强大的功能而受到广大程序员的欢迎。在"学习Python过程中的知识汇总"中,我们将会探索这个语言的基础以及一些高级特性,这些内容可能来源于书籍、在线论坛、...

    2020年Python面试题汇总及答案详解

    - 易读性:Python语法简洁明了,有助于代码的阅读和理解。 - 大量库支持:Python拥有丰富的标准库和第三方库,涵盖了各种功能需求。 - 可跨平台:Python可在多种操作系统上运行。 - 动态类型:Python自动管理...

    软通python机试考题总结.docx

    本文总结了软通动力的 Python 机考题目,涵盖了 Python 语法基础、编程基础等方面的知识点。这些知识点都是程序员容易忽略的基础知识,但它们对程序员的编程基础和项目经验都是非常重要的。 一、选择题 1. 下列...

    110道Python面试题:.pdf

    以下是 Python 面试题大全,涵盖了 Python 的基础知识、语法、标准库、面向对象编程、多线程编程等方面。 1. Python 基础知识 Python 是一种高级编程语言,支持多种编程范式,包括面向对象编程、函数式编程、反射...

Global site tag (gtag.js) - Google Analytics