java轉python記錄 一
- 2020 年 1 月 9 日
- 筆記
前提條件:本人從事java工作3年左右,由於大數據形勢的驅動下,準備從事大數據行業,以python作為起點向大數據進軍。
本系列文章將把我從java轉戰python的學習過程做一個記錄。
從java和python語法學起。結合java語法和python語法對比著學習。
沒有大括弧,沒有類型限制(縮進)
/和// /表示除,不取整 //整除,取整,省略小數
__future__模組 一些新特新會先放到此模組中
** 求冪
十六進位 0xAF13D 以0x開頭
八進位 07601 以0開頭
input 輸入函數,輸入的是一個表達式
row_input 輸入的是一個字元串,3.0取消了?
類型轉換:str(1234),long()....
math和cmath模組 math簡單的數學,cmath複雜的數學(包含複數)
#注釋
字元串表示 "abc" 'abc'單引號和雙引號都是可以的
repr和str區別 repr('表達式') str('字元串強轉') 都能返回字元串,形式不同
'''跨行的字元串,可以用三引號表示'''
反斜線的作用,可以程式碼換行
Unicode字元串 u'以字元u開頭的Unicode字元串'
列表和元組
序列 sequence一連串數字或者符號可以認為是java中的collection介面
6個內建序列:列表,元組,字元串,Unicode字元串,buffer對象,xrange對象
元組和列表 元組裡面的內容不能修改 (a,)[1,2,3]
通用序列操作:索引,分片,加,乘,檢查,len(),max(),min(),迭代器
負索引 -1最後一個seq[-1:]
乘 [a]*3 等於[ a,a,a]
seq[3:9] 取序列seq第4位到第9位,前開後閉,包含索引3的元素,不包含索引9的元素
seq[ 起始索引 : 結束索引 : (步長默認1,可以為負數 )]
相加,類似於拼接
[None]*10 初始化空列表10個長度
'a' in seq 檢查'a'在seq中
list,tuple 列表和元組的英文
刪除元素 del list[2] 試驗下
分片賦值 list[2:]=[1,2,3,4,5,8]將seq索引2開始的值進行替換;list[2:2]=[1,2,3]插入;list[2:3]=[]刪除
list[0,0]=[123]首部插入 list[-1,-1]=[234]尾部插入 試驗下
[1,2]+[3,4]和[1,2].append([3,4]) 效率的區別 [1,2]+[3,4]返回的新的序列,[1,2].append([3,4])在[1,2]基礎上進行擴充
list.count(x)
list.index(元素) 如果元素未找到,拋出異常
list.insert(3,[a,b])
list.pop() 尾部刪除並返回對應的值 seq.pop(0)首部刪除返回 試驗下
list.remove(元素) 刪除第一個匹配的元素 若元素不存在seq中拋異常
list.reverse()
list.reversed() 返回一個逆向迭代器
list.sort()和 list.sorted()sorted返回一個新的列表,sort修改原列表
list.sort(cmp,reverse=True) cmp函數引用,cmp是自定義的函數,以什麼來排序
單元素元組 1, (1,) 元組不可以修改
