乡下人产国偷v产偷v自拍,国产午夜片在线观看,婷婷成人亚洲综合国产麻豆,久久综合给合久久狠狠狠9

  • <output id="e9wm2"></output>
    <s id="e9wm2"><nobr id="e9wm2"><ins id="e9wm2"></ins></nobr></s>

    • 分享

      python和Java語法對比

       ekylin 2021-12-24

      定義變量:

      1. java:
      2. int a = 1;
      3. python:
      4. a = 1 #python中不需要分號結(jié)尾,python用縮進(jìn)判斷代碼塊

      Python定義變量的時(shí)候不需要給出類型,直接定義即可,Python會(huì)自動(dòng)判斷變量類型。
      String類型:

      1. java:
      2. String a = new String();
      3. a = "123";
      4. python:
      5. a="123" #python中單引號雙引號不區(qū)分

      Python中if語句bool表達(dá)式的運(yùn)算符

      1. java: && || 取反 ! true
      2. python: and or 取反 not true
      3. if a > 0 && a < 10 && !a == 5{}
      4. if a > 0 and a < 10 and not a == 5:

      Pyhthon中的除法

      '/' 保留小數(shù)的除法
      '//' 舍去小數(shù)的除法

      數(shù)組定義

      1. java:
      2. String[] a = new String[5];
      3. python:
      4. c=[1,2,3,4]
      5. d=[123,"3",c] #python中數(shù)組接受任意類型,并且各個(gè)類型都嫩惡搞互相轉(zhuǎn)換

      Python中對數(shù)組的切片

      一般數(shù)字?jǐn)?shù)組
      a[x:y:z] #x表示起始點(diǎn),y終止點(diǎn)(不包含),z步長

      1. a = [1,2,3,4,5]
      2. print(a[1:-1]) #打印出數(shù)組a下標(biāo)從1到-1(不包含)的數(shù)字
      3. 結(jié)果是
      4. [2,3,4]

      字符串?dāng)?shù)組

      1. b ="12345"
      2. print(b[1:-1]) #結(jié)果是'234'
      3. print(int(b)) #將數(shù)組強(qiáng)制轉(zhuǎn)換成int數(shù)組(必須字符串?dāng)?shù)組中全為數(shù)字)

      利用切片倒序數(shù)組
      a=[1,2,3,4,5]
      a[::-1] [5,4,3,2,1]
      省略前面兩個(gè)參數(shù),表示對整個(gè)數(shù)組,步數(shù)-1 從后往前
      a[4:0:-1] [5,4,3,2]
      完整的寫完區(qū)間,但是會(huì)發(fā)現(xiàn)無法將一個(gè)數(shù)字倒序,因?yàn)榍衅话Y(jié)束點(diǎn)

      發(fā)現(xiàn)

      但當(dāng)你的起始或者終止點(diǎn)超過數(shù)組長度,就返回最大能返回的
      a[4:-6:-1]
      a[5:-9:-1]
      上面兩個(gè)都是一樣的,因?yàn)榈谝粋€(gè)是結(jié)束點(diǎn)超出數(shù)組范圍
      第二個(gè)是起始點(diǎn)和結(jié)束點(diǎn)都超過
      記住 -1表示倒數(shù)第一個(gè)小標(biāo),所以你不能寫成
      a[4:-1:-1] 這個(gè)表示起始終止點(diǎn)都是最后最后一個(gè),所以返回空

      循環(huán)語法

      for循環(huán)

      1. java:
      2. for (int i=0; i<9; i++){
      3. System.out.println(i);
      4. }
      5. python:
      6. for i in range(0,9): #range()函數(shù),不包含右邊
      7. print(i)
      8. #會(huì)發(fā)現(xiàn)在java用'{’的地方,python使用':’表示
      9. #比如if,class,for,while,定義函數(shù)時(shí)等等

      相比之下會(huì)發(fā)現(xiàn),python的語法更加接近我們英語語法,for i 對于每個(gè)i 在0-9(不包含9)中。

      while循環(huán)

      1. java:
      2. while(int i < 9){
      3. System.out.print(i);
      4. i--;
      5. }
      6. python:
      7. while i>0 :
      8. print(i)
      9. i = i-1 #注意python中沒有自加自減

      函數(shù)定義

      現(xiàn)在我們定義一個(gè)filter函數(shù),只保留數(shù)組中的偶數(shù)

      1. a = [1,2,3,4,5,6,7,8,9]
      2. def filter(l): #def表示定義函數(shù)
      3. x=[]
      4. for i in range(0,len(l)): #len函數(shù)獲取數(shù)組長度
      5. if l[i]%2 == 0:
      6. x.append(l[i]) #.append往數(shù)組中加元素
      7. return x

      然后比較魔性的寫法

      1. def filter(l):
      2. return [x for x in l if x%2 == 0]

      遞歸函數(shù)

      定義一個(gè)函數(shù)求出一個(gè)數(shù)字的階乘

      1. def fn(n):
      2. if n == 1:
      3. return 1
      4. else:
      5. return n*fn(n-1)

      Python中的class概念

      1. class Person:
      2. def __init__(self, name):
      3. self.name = name
      4. def getName(self):
      5. return self.name

      上面這段代碼表示class Person的構(gòu)造函數(shù),使用這個(gè)類,必須傳入一個(gè)name的參數(shù),然后里面還定義了一個(gè)getName()函數(shù),得到這個(gè)類的name參數(shù)值

      1. a = Person("abc") #新定義一個(gè)變量名為a的Person類,里面的name值為abc
      2. a.asd = 123 #與java不同的是,可以隨時(shí)忘類中加入新的參數(shù)和值
      3. print(a.name, a.asd)

      改寫Python的原有函數(shù)

      Python可以將print這類基礎(chǔ)函數(shù)改寫,但是java做不到

      1. oldPrint = print
      2. def myprint(x):
      3. oldPrint(":::", x)
      4. print = myprint
      5. print("ashdhabsd") #結(jié)果::::ashdhabsd
      6. print(345) #結(jié)果::::345

      Map函數(shù)

      map(函數(shù)名,數(shù)組)
      比如我有一個(gè)power平方函數(shù)和int數(shù)組a[1,2,3]
      a=list(map(power,a))
      [1,4,9] 注意這里用map必須在前面加list轉(zhuǎn)換,否則顯示的不是數(shù)組

      Lambda函數(shù)

      Lanbda可以免去在外面定義函數(shù),一些簡單只需要用一次的函數(shù)可以直接寫在表達(dá)式中

      1. a = [1,2,3,4,5]
      2. a = map(lambda x: x**2, a)
      3. a = list(a)
      4. print(a)

      Python中的字典{} (HashMap)

      a{ key1 : value1 , key2 : value2 } 一個(gè)key對應(yīng)一個(gè)value

      1. a = {"name":"abc","age":17}
      2. a ['sex']='male' #為字典中加入新的元素

      判斷key或者value是否在字典中

      1. "name" in a #ture
      2. "abc" in a #false in a 默認(rèn)是keys的集合
      3. "abc" in a.values() #ture

      不僅僅只是字典,其他字符串也可以同樣操作

      1. a = "hello 12 3 abc"
      2. "abc" in a #true

      轉(zhuǎn)載地址:https://www.jianshu.com/p/c38671c010f1

       

        本站是提供個(gè)人知識管理的網(wǎng)絡(luò)存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點(diǎn)擊一鍵舉報(bào)。
        轉(zhuǎn)藏 分享 獻(xiàn)花(0

        0條評論

        發(fā)表

        請遵守用戶 評論公約

        類似文章 更多