• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            的筆記

            隨時(shí)隨地編輯

            Python 開發(fā)記錄

            里個(gè),這些文檔是作為備忘錄筆記,不是為了展示,主要目標(biāo)讀者是某個(gè)患有嚴(yán)重健忘癥的程序猿,如果被你不小心讀到并迷惑不解,要么可以忽略,要么可以留言提問(wèn)。更希望能指出錯(cuò)誤。

            Pycharm 環(huán)境設(shè)置

          1. 修改快捷鍵: File --> Settings --> Keymap : Visual Studio

          2. PTVS 環(huán)境設(shè)置

            標(biāo)識(shí)符顏色設(shè)置
          3. function:166,226,46
          4. param:253,151,31
          5. key:102,217,239
          6. operator:249,38,114

          7. Visual Assit 環(huán)境設(shè)置

            允許VC識(shí)別其他擴(kuò)展,這里是識(shí)別成C++文件了。。。
          8. Allow C/C++ files with a non-standard extension
          9. 其中Add your extension to:"Tools | Options | Text Editor | File Extension | Microsoft Visual C++"不要修改了,否則會(huì)將py文件當(dāng)成C++,所有#注釋都被VA識(shí)別成了宏定義,很悲劇...

          10. Support for python (work with pytools)
          11. 扯了些淡,2012年的,也折騰了下,不知道到底其作用了沒(上一個(gè)一起設(shè)置了,所以不好區(qū)分)

            Outline不能用,Open File in Solution可以用,還行

            參數(shù)組(元組*、字典**)

            將參數(shù)放到一個(gè)元組或字典中,func(params[,params2], *tuple_grp_nonkw_args, **dict_grp_kw_args)
          12. 形參、元組、字典的順序不能變
          13. 三者可以缺少其中某2個(gè)或兩個(gè)
          14. 調(diào)用時(shí)傳的參數(shù)也必須對(duì)應(yīng)順序
          15. fun = lambda *z : z 同樣適用

          16. 代碼組

            縮減相同的一組語(yǔ)句構(gòu)成代碼組。如if、while、def、class等符合語(yǔ)句以關(guān)鍵字開始,以冒號(hào)':'結(jié)束,之后接代碼組。
          17. 代碼組可以稱為子句(clause)

          18. 修飾器(decorate)

            def f_decorate(func):
                print 'begin f_decorate'

                def func_wrapper(name):
                    print '<func_wrapper>'
                    return "<p>{0}</p>".format(func(name))

                print 'end f_decorate'
                return func_wrapper

            @f_decorate
            def g_function(name):
                print '<g_function>'
                return "lorem ipsum, {0} dolor sit amet".format(name)


            ret = g_function("John")

            預(yù)處理期

            先組裝新函數(shù)對(duì)象
            #g_function = f_decorate(g_function)
            其實(shí)執(zhí)行的函數(shù)對(duì)象是f_decorate,g_function只是參數(shù)
            新編譯的函數(shù)暫且叫g(shù)_function@

            執(zhí)行期
            按部就班調(diào)用新函數(shù)g_function@,記得存在原始函數(shù)對(duì)象g_function在新的函數(shù)對(duì)象環(huán)境里;
            而在修飾器函數(shù)體里,func_wrapper代表了新函數(shù)功能,func(name)代表了原來(lái)的函數(shù)功能,
            查看 globals和locals均可查看到新生成的函數(shù)對(duì)象
            #print globals()
            #print locals()

            運(yùn)行時(shí)行號(hào)、文件名等

            (frame, filename, line_number, function_name, lines, index) = inspect.getouterframes(inspect.currentframe())[0]
          19. <占位項(xiàng)1>
          20. <占位項(xiàng)2>

          21. Pip

            Tool for installing Python packages
            https://pypi.python.org/pypi/pip
          22. C:\Python27\Scripts 加入環(huán)境變量,pip.exe在這里
          23. <占位項(xiàng)2>
          24. SimpleXMLRPCServer— Basic XML-RPC server

            https://docs.python.org/2.6/library/simplexmlrpcserver.html
          25. Server
          26. from SimpleXMLRPCServer import SimpleXMLRPCServer
            server = SimpleXMLRPCServer(('localhost', 9000))
            def my_function(a, b):
            return a * b
            server.register_function(my_function, 'multiply args')
            try:
            print 'Use Control-C to exit'
            server.serve_forever()
            except KeyboardInterrupt:
            print 'Exiting'
            
          27. Client
          28. import xmlrpclib
            proxy = xmlrpclib.ServerProxy('http://localhost:9000')
            print getattr(proxy, 'multiply args')(5, 5)
            

            <占位標(biāo)題>

            <占位描述占位描述占位描述占位描述占位描述占位描述占位描述占位描述占位描述占位描述占位描述占位描述占位描述占位描述占位描述占位描述>
          29. <占位項(xiàng)1>
          30. <占位項(xiàng)2>

          31. 扯個(gè)全局對(duì)象的蛋

            這個(gè)蛋有點(diǎn)扯,在當(dāng)前作用域,你可以使用全局變量,但是這個(gè)時(shí)候如果你用等號(hào)賦值這個(gè)名字,這個(gè)時(shí)候這個(gè)變量其實(shí)是局部重新聲明的一個(gè)變量,而且不管這句是在塊的任何位置。
            Instance=None
            print '1 global instance id:',id(Instance)

            class BossAIComp():
                def __init__(self):
                    #Instance = self
                    print '2 instance id:',id(Instance)
          32. '#Instance = self'這句如果被注釋了,你使用的就是全局的Instance
          33. 變量名字在當(dāng)前域任何地方只要賦值,這個(gè)塊里這個(gè)名字都是局部的。例如"Instance = self"如果放在“print '2”下面,也會(huì)直接將這個(gè)變量當(dāng)成局部的,同時(shí)在使用的時(shí)候提示這個(gè)變量沒有定義

          34. 再扯個(gè)import的蛋

            用法的不同形式的蛋

             ################################################

            # case 1
            import xxx.yyy.BossAIComp
            xxx.yyy.BossAIComp.Instance.say()

            # case 2
            import xxx.yyy.BossAIComp as ai
            ai.Instance.say()

            # case 3
            from xxx.yyy.BossAIComp import Instance
            Instance.say()

            # case 4
            from xxx.yyy.BossAIComp import Instance as ist
            ist.say()

            <占位標(biāo)題>

            <占位描述占位描述占位描述占位描述占位描述占位描述占位描述占位描述占位描述占位描述占位描述占位描述占位描述占位描述占位描述占位描述>
          35. <占位項(xiàng)1>
          36. <占位項(xiàng)2>

          37. <占位標(biāo)題>

            <占位描述占位描述占位描述占位描述占位描述占位描述占位描述占位描述占位描述占位描述占位描述占位描述占位描述占位描述占位描述占位描述>
          38. <占位項(xiàng)1>
          39. <占位項(xiàng)2>

          40. <占位標(biāo)題>

            <占位描述占位描述占位描述占位描述占位描述占位描述占位描述占位描述占位描述占位描述占位描述占位描述占位描述占位描述占位描述占位描述>
          41. <占位項(xiàng)1>
          42. <占位項(xiàng)2>

          43. 修改記錄

          44. 2014-07-15 創(chuàng)建
          45. ---
          46. posted on 2014-07-14 17:00 的筆記 閱讀(452) 評(píng)論(0)  編輯 收藏 引用


            只有注冊(cè)用戶登錄后才能發(fā)表評(píng)論。
            網(wǎng)站導(dǎo)航: 博客園   IT新聞   BlogJava   博問(wèn)   Chat2DB   管理


            无码伊人66久久大杳蕉网站谷歌 | 久久久久久免费一区二区三区| 久久久久久综合网天天| 久久精品国产黑森林| 国产精品毛片久久久久久久 | 无码人妻精品一区二区三区久久久| 久久婷婷五月综合97色直播| 国产69精品久久久久APP下载| 无码乱码观看精品久久| 精品国产乱码久久久久软件| 亚洲?V乱码久久精品蜜桃| 亚洲一区精品伊人久久伊人 | 国产精品久久久久无码av| 久久无码人妻一区二区三区| 久久国产精品成人影院| 久久久久亚洲av成人无码电影| 久久久久无码专区亚洲av| 亚洲&#228;v永久无码精品天堂久久| 无码人妻少妇久久中文字幕| 久久婷婷五月综合色奶水99啪| 久久婷婷五月综合色奶水99啪| 国产国产成人精品久久| 91精品国产91久久久久久| 嫩草伊人久久精品少妇AV| 精品久久久久久国产潘金莲 | 精品国产乱码久久久久久呢| 日韩精品久久无码中文字幕| 久久综合中文字幕| 久久久久99这里有精品10| 国产精品久久波多野结衣| 久久久久亚洲?V成人无码| 久久中文骚妇内射| 精品久久久久久久中文字幕| 91精品国产色综合久久| 久久天天躁狠狠躁夜夜2020老熟妇| 国产69精品久久久久9999APGF | 久久99国产乱子伦精品免费| 久久精品无码一区二区三区日韩| 久久丫精品国产亚洲av不卡 | 国产香蕉97碰碰久久人人| 亚洲AV成人无码久久精品老人|