国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

001_第一部分_[Python基礎]

WrBug / 1397人閱讀

摘要:一基礎數(shù)據(jù)類型原始類型復合類型由其他原始類型組合起來的類型運算符和表達式算術運算符加減乘除取模冪地板除的除位運算符二進制之間的運算轉(zhuǎn)換成二進制數(shù)將二進制轉(zhuǎn)換成十進制按位與都為才為按位或存在即為按位異或相同的為不同的為按位取反正數(shù)的補碼,反

一.python基礎:

數(shù)據(jù)類型:

   
   原始類型:
   int float byte

   復合類型:
   由其他原始類型組合起來的類型
   list dict cuple 

運算符和表達式:

        算術運算符:
                加 / 減 / 乘 / 除 / 取模 / 冪 / 地板除
                +    -    *    /     %     **     //

        python2 的 除:
        10 / float(20)

        位運算符[二進制之間的運算]:
        bin(60) 轉(zhuǎn)換成二進制數(shù)
        int("1100",2)   將二進制轉(zhuǎn)換成十進制
        &    按位與        都為1 才為1    
        |    按位或         存在1 即為1
        ^    按位異或         相同的為0,不同的為1
        ~    按位取反         正數(shù)的補碼,反碼都是其本身
                        負數(shù)的補碼是:符號位不變,其余各位求反,末位加1 ,既11111
                        反碼是:符號位為1,其余各位求反,但末位不加1 ,既11110
                    
                        假設有一個數(shù)~9,計算步驟如下,9=1001
                        其補碼為01001,
                        對其取反10110,這個數(shù)是在內(nèi)存中存放的,現(xiàn)在需要裝換成原碼,既先減1,然后取反得 
                        11010,符號位為1是負數(shù),既-10
        <<    左移
        >>  右移

按位取反:

    ---
    正數(shù)的補碼和反碼都是其本身,但是前面要加上正數(shù)的符號位 "0"
    ---
    負數(shù)的符號位是"1"
    負數(shù)的補碼是:符號位不變,其余各位求反,末位加1
    負數(shù)的反碼是:符號位不變,其余各位求反
    ---
    二進制數(shù)在內(nèi)存中是以補碼的形式存放的
    ---

    60的按位取反計算:
    
        第一步:
        計算60的 [補碼] 和 [反碼]:
    
                    原碼    補碼     反碼
            十進制    60
            二進制    111100  0111100    0111100
    
    
        第二步:
        取反[取反操作是對補碼進行取反]:
    
    
                            補碼
                            1000011
    
                                    反碼
                                    補碼 - 1
                                    1000010
                    原碼
                    1111101
                    1 代表是負數(shù)
                     111101 轉(zhuǎn)換成十進制為61
                    -61

比較運算符[返回布爾類型]:

   ==    等于
   !=    不等于
   >   大于
   <   小于

邏輯運算符:

   
   and        與     同時True才為True
   or        或  只要存在True 則為True
   not     非  取反

   邏輯運算的短路功能:
   前面False后面就不會再計算:
   1+2 >4 and (2+2) == 4

   前面是True就不會再計算后面:
   1+2 <4 or (2+2) == 3 

---

   def add(x, y):
       print("%d + %d" %(x, y))
       return x+y
   add(1, 2) > 4 and add(2, 3) == 5
      ...: 
   1 + 2
   Out[2]: False

---

   def add(x, y):
       print("%d + %d" % (x, y))
       return x+y
   add(1, 2) < 4 and add(2,3) < 6
      ...: 
   1 + 2
   2 + 3
   True

---

   def add(x, y):
       print("%d + %d" % (x, y))
       return x+y
   add(1, 2) < 4 and add(2,3) < 4
      ...: 
   1 + 2
   2 + 3
   False

其他運算符:

    =        賦值運算符
    in         成員運算符
    not in     成員運算符
    is         身份運算符, 比較兩個元素的id; 列表不能用is 做比較
    is not     身份運算符
            is 使用的環(huán)境經(jīng)常拿來判斷是不是None;

表達式與優(yōu)先級:

        1. 一元高于二元
        2. 數(shù)值高于邏輯
        3. 算術運算高于位運算
        4. 乘除高于加減
        5. 拿不準時加括號

程序結(jié)構:

        1.    順序結(jié)構
        2.    分支結(jié)構
        3.    循環(huán)結(jié)構

        關于 SWITCH
        Python中并沒有switch結(jié)構,因為"switch"結(jié)構完全可以由"if elif else"語句來實現(xiàn)
        
        switch實現(xiàn)方法:
        粗糙版:
        #coding:utf8  
        #add minus divide using python  
        from __future__ import division  
        x=1  
        y=2  
        operator="/"  
        result={  
        "+":x+y,  
        "-":x-y,  
        "*":x*y,  
        "/":x/y  
        }  
        print(result.get(operator))         

        改進版:
        #!/usr/bin/env python
        # -*- encoding:utf-8 -*-
        
        class calculate:
            def __init__(self, x, op, y):
                self.x = x
                self.op = op
                self.y = y
        
            def count(self):
                result={
                "+":self.x+self.y,
                "-":self.x-self.y,
                "*":self.x*self.y,
                "/":self.x/self.y}
                print(result.get(self.op))
        
        mark = calculate(10,"+",2)
        mark.count()

python的三元運算

        a = 4
        b = a if a > 0 else 0

RANGE函數(shù)

        range(x)         [0,x)
        range(m, n)     [m, n)
        range(m, n, s)    [m,n),步長為s

break 子句

        * 只能出現(xiàn)在循環(huán)結(jié)構中
        * 用于跳出當前循環(huán)結(jié)構

continue子句:

        * 只能出現(xiàn)在循環(huán)結(jié)構中
        * 用于跳過此次迭代的剩余操作

else子句:

        循環(huán)結(jié)構的else子句是python特有的,用于表示一個循環(huán)不是經(jīng)過"break"跳出循環(huán),提前結(jié)束循環(huán),而是正常退出的,才會執(zhí)行else中的語句;
二.內(nèi)置容器:

列表

        * list是最常用的線性數(shù)據(jù)結(jié)構
        * list是一系列元素的有序組合
        * list是可變的
        
        列表的操作:
        定義列表:
        li = []
        li = list()
        li = [1, 2, 3]

        查看幫助文檔:
        help(list)
        增:append, extend, insert
        刪:clear, pop, remove
        改:reverse, sort
        查:count, index
        其他:copy

        增:
        li = []
        append:只能一個一個增加
        li.append(3)
        
        extend:擴展
        li.extend([5,6,7])
        li
        [3, 5, 6, 7]

        insert:位置之前插入
        li.insert(0, 0) 在第一個之前插入0

        刪:
        clear:清空列表
        li.clear()

        remove:從左開始刪除指定元素一個,如果刪除的元素不存在會報錯ValueError
        li.remove(3)  刪除元素3
        
        pop:刪除指定位置元素:如果不存在會報錯IndexError
        li.pop()    刪除最后一個元素
        li.pop(3)   刪除key是3的元素

        改:
        reverse:顛倒列表順序:
        sort:從小到大排序:    僅用于簡單數(shù)字排序
        sort(reverse=True) 從大到小排序:

        查:
        count:顯示匹配元素個數(shù)
        li.count(3)
        
        其他:
        index(3):返回指定元素在列表中的位置;如果不存在會報ValueError:
        index(value, [start, [stop]]) 

        copy: 深拷貝,會生成一個新的list
                賦值是淺拷貝,淺拷貝的數(shù)據(jù)修改會對原來的list產(chǎn)生影響;

        下標操作:
        li[1]
        
        li[1] = 10

        切片:
        li[3:5]:  前面是閉區(qū)間  后面是開區(qū)間
        li[3:]
        li[:]  效果和copy是一樣的,效率會比copy快;
        li[:4] 
        li[4:-2]     切到倒數(shù)第二個;后面是開區(qū)間
        li[-4:-1]
        li[2:6:2]:    start, stop ,步長
        li[6:2:-1]  start,stop ,反向顯示,步長為1
        li[6:2:-2]    start,stop,反向顯示,步長為2
        li[::-1]
        li[::2]

元組[tuple]:

        tuple和list大多數(shù)地方類似
        tuple是不可變結(jié)構
        tuple只能獲取值

        定義一個元組:
        t = ()
        t = tuple()

        count:統(tǒng)計元素個數(shù)
        index:返回指定元素在元組中的位置

        下標操作[通過下標獲取value]:
        t[1]

* PACKING & UNPACKING

        PACKING        :把多個變量的值變成一個元組或者列表,默認是變成元組
        UNPACKING    :也可以把一個元組或者列表賦值給多個變量

    ---
        x, *y = (1, 2, 3, 4)
        print(x)
        1
        print(y)
        [2, 3, 4]

    ---
        *x, y = (1, 2, 3, 4)
        print(x)
        [1, 2, 3]
        print(y)
        4

    ---
        *_ 這個表示賦值給一個不能用的變量:

        x, *_, y = (1, 2, 3, 4)
        print(x)
        1
        print(y)
        4
        
    ---
        x, (y, z) = (1, (2, 3))
        print(x)
        1
        print(y)
        2
        print(z)
        3

    ---

集合:

        集合的含義和數(shù)學上集合的含義相同
        集合不是線性結(jié)構
        * 集合元素是唯一的
        集合元素是可hash的
        
        集合的操作:
        初始化:
        s = set()
        s = set([1, 2, 3])

        增:
        s.add(3)                     //添加一個元素
        s.update([3, 4, 5, 6])        //集合添加list中的多個元素

        刪:
        remove:        刪除,刪除不存在的元素會拋出異常;
        discard:    刪除,刪除不存在的元素不會拋出異常;
        clear:        清空
        pop:        隨機刪除集合中的一個元素
        
        集合運算:
        union                    并集              a | b
        intersection            交集              a & b
        difference                差集,不可交換的    a - b
        symmetric_difference    集合之差的并集       a ^ b

        集合判斷[返回布爾值]:
        issubset    子集
        issuperset    超集
        isdisjoint    

字典:

        * 字典是一種無序集合
        * 字典是一種KV結(jié)構
        * value可以是任何對象
        * key是唯一的
        * key必須是可hash對象

        字典的操作:
        d = dict()
        d = {"a":5, "b":4}
        d["a"]
        
        d.keys()
        dict_keys(["b", "a"])

        遍歷 key:
        for key in d.keys():
            print(d[key])

        遍歷 value:
        for value in d.values():
            print(value)

        遍歷key和value:
        for key,value in d.iterms():
            print(key, value)
            print("%s => %s" %(key, value))

        d.iterkeys()    返回的是一個生成器;
        
        pop,popitem     用于刪除元素
        d.pop("key")    需要指定key,刪除不存在的值返回KeyError
        d.pop("key",6)    刪除不存在的值將返回 6
        
        增加字典元素:
        d["c"] = 7

文章版權歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://m.specialneedsforspecialkids.com/yun/37792.html

相關文章

  • 002_一部_[字典 / 列表解析 / 字符串操作 / STR與BYTES的區(qū)別 ]

    摘要:一字典定義字典獲取元素這兩個的區(qū)別用在不存在的時候不會拋出設置當不存在的時候返回的內(nèi)容增加和修改元素修改和增加元素的方法都是這個刪除元素刪除的同時返回刪除的內(nèi)容如果刪除不存在的會報這個時候就需要給定返回值這樣返回的就是不會報錯誤從字典中隨機 一.字典: 定義字典:d = {}d = dict()d = {a:1, b:2} 1.獲取元素: d[a] d.get(a) >這兩個的區(qū)別,用...

    CastlePeaK 評論0 收藏0
  • Pandas之旅(五): 構建模型初入門:檢驗數(shù)據(jù)一致性

    摘要:如何根據(jù)需要創(chuàng)建簡單模型大家好,今天這一期我想和大家分享有關于創(chuàng)建模型的部分,首先讓我們來看一個比較常見的場景你每天需要打開個進行相同的操作,各種眼花繚亂的函數(shù)后老眼昏花。。。。 Pandas 如何根據(jù)需要創(chuàng)建簡單模型 大家好,今天這一期我想和大家分享有關于pandas創(chuàng)建模型的部分,首先讓我們來看一個比較常見的場景: 你每天需要打開N個excel進行相同的操作,各種眼花繚亂的VBA函...

    hqman 評論0 收藏0
  • 從零開始使用TensorFlow建立簡單的邏輯回歸模型

    摘要:我們使用的損失函數(shù)為由于我們的數(shù)據(jù)集只有兩個特征,因此不用擔心過擬合,所以損失函數(shù)里的正規(guī)化項就不要了。到此,一個完整的簡單的邏輯回歸模型就實現(xiàn)完畢了,希望通過這篇文章,能讓各位看官對在中機器學習模型的實現(xiàn)有一個初步的了解。 TensorFlow 是一個基于 python 的機器學習框架。在 Coursera 上學習了邏輯回歸的課程內(nèi)容后,想把在 MATLAB 中實現(xiàn)了的內(nèi)容用 Ten...

    kohoh_ 評論0 收藏0
  • Flask Web Development —— 大型應用程序結(jié)構(下)

    摘要:單元測試這個應用非常小以至于不需要太多的測試,但是作為示例會在示例中展示兩個簡單的測試定義。示例單元測試編寫好的測試使用的是來自于標準庫中標準的包。為了運行單元測試,可以在腳本中增加一個自定義的命令。 4、啟動腳本 頂層目錄中的manage.py文件用于啟動應用。這個腳本會在示例7-8中展示。 示例7-8. manage.py:啟動腳本 #!/usr/bin/env python im...

    whidy 評論0 收藏0

發(fā)表評論

0條評論

WrBug

|高級講師

TA的文章

閱讀更多
最新活動
閱讀需要支付1元查看
<