合併昨天的文章 來一次二連彈
今天要介紹 基本的資料格式和操作喔
衝阿~~~~
Outline:
1.數字 => 2.布林 => 3.字串(補充請看附錄) => 4.目錄(List) => 5.字典
1.數字:
其實數字就是最基本的資料格式
也就是加減乘除之類的運算啦~~~
新手小白就算不會寫程式 也可以拿Python 當計算機阿
這麼潮的計算機 不用嗎XD
x=1; y=1 ; z=x+y; # 這邊先餵值
print(x+y) #加
print(z-5) #減
print(z*5) #乘
print(z/5) #除
print(z**5) #次方
print(z**0.5) #根號
import math
print(math.log(z)) # log 就要用 math 這個套件了~~
math.exp(z) # 取對數
## 對了~~在Jupyter裡面
##如果資料放最後一行就不用print() 他會是在Out 的地方顯示
##以下是出來的結果:
2.布林
#布林運算是在判斷 True 和 False
#也就是對跟錯 是或否
#注意喔 True 和 False 大小寫很重要
#範例:
a = 1 ;
qq=a>0 #判斷 1是不是大於0
# 其他還有 >, < ,>= ,<= ,== 都蠻直觀的
print(qq) # 正確就會是 True
qq= a==1 ; # 判斷是否相等的時候是用 == 這和R是一樣的!!
qqq= a <0 ;
print(qq,qqq); ##可以一次 print 兩個出來
##跑出來的結果 1 >0 => True
##然後1=1 => True , 1 <0 => False
##正確喔~~~
3.字串
###字串可以玩的東西就很多了 新手小白盡量整理囉
#生成字串
x= "安安你好喔";
x='安安你好喔';
x="安安你好喔"; # 一個引號和兩個引號是一樣的
#叫出字串
print(x)
print(x[0]); # 還是提醒~ Py的index是從0開始
print(x[-1]); #抓出最後一個字
print(x[0:2]); #很不習慣 0:2 Py只會顯示 0,1 (最後一個2沒有出來)
print(x[-4:-1]); # 用負的就更不習慣了....
#### 請大家自己算算看個數對不對XD
## 另外 講一些可能會用到的函數
qq=x.count("安") ; print(qq); #計算 安 這個字有幾個
qqq=x.find("喔") ; print(qqq) #找到 喔 這個字是在第幾個位置
## R 裡面的paste cut Py不用函數就可以做到了
## 還挺方便的
print(x+",還有,"+x) #字串加字串
print(x[0:2]) #擷取部分字串
##實際上在比較複雜的函數上 切割還是需要函數來用 (請看附錄)
4.目錄(List)
##上次介紹了DataFrame
#所以 list() 新手小白覺得是相對簡單的
# list 其實就是一長串用 , 分隔出來的資料格式
### list 和 一些函數
x=[1,2,3,4] ; list(x); #生成 list
print(x)
## 叫出資料的方法
print(x[1:3] ) # 和前面說的一樣用 : 這東西要特別注意
print( x[-4:-2] ) ## 用 負號加冒號
x[0]=100 ### 另外 要取代掉某些位置的值 就直接這樣打 x[ index ] = XXXX
print(x)
## 加新的資料 到現有的 List裡面
x.append("可以放string") # 用append() 可以往後加最後一格
x.append(True) # 對了 list也可以 放布林喔~~
print(x)
## 如果要合併多個?
y= list([123,456])
print(x+y); # 直接相加就好了
x[4:4]=y ## 加中間 有些人把它叫做 切片?
print(x)
### 介紹一些常用函數
qqq=len(x); # 算list的總長度
print( len(x) );
xx=x[0:4] ; print(xx); # 計算數字 所以只取 前4個
qq=sum(xx); print(qq); # 計算總和 跟R 一樣
## 其他如 max min 也是跟R一樣
print(max(xx) );
print(min(xx) );
print( sum(xx)/len(xx) ); ## 沒有 平均數的函數 有點不習慣XD
5.字典
## 字典
## 這是新手小白第一次接觸的資料類型
## 但用過之後還蠻方便的 寫法如下
## 用大括號包起來 然後字串,冒號,數字
Score= {"大雄":0,"多啦":100} # 我們可以想成紀錄 大雄考0分 多啦考100分
print(Score)
Score["胖虎"]=50 ## 新增的人就用 中括號 加進去
print(Score)
Score["大雄"] ##要查詢的話也是 中括號
## 我這邊理解 他會叫字典 是因為 他紀錄成像資料庫的樣子
## 我們想要查誰的分數 就可以用上面的方式呼叫出來
#一些函數也可以用的
print( len(Score) ) ## 字典裡有幾筆資料?
print( Score.keys() ) ## 字典裡有哪些人?
print( Score.values() ) ## 字典裡有哪些值?
字串的補充:
##實際上在比較複雜的函數上 切割還是需要函數來用
#例如 分別把下面三段字串分開 用的是 qq , 空白 , \n <= \n指的是換行
#可以分別比較一下 我用 split 前後的差異
print( "安qq安qq安qq安" )
print( "安qq安qq安qq安".split("qq") )
print( "安 安 安 安" )
print( "安 安 安 安".split(" ") )
print( "I'm Bob.\nWhat's your name?")
print( "I'm Bob.\nWhat's your name?".split("\n") )
#字串合併就是用 join
#比如說我先產生一段字串的序列 a b c
#然後我把這些字串用 Tab鍵合成一個字串
seq = ["a", "b", "c"]; # 這邊用的 中括號 是 list 格式 等等會介紹
print(seq)
print( "\t".join(seq) ) ## \t 是 Tab鍵 其他還有一些特殊符號 就請大家自己查囉
後記: 這次介紹東西比較多細節 但截圖的地方
沒有很讓大家很容易的 一個一個對應出print出來的東西
抱歉囉~~~畢竟這次是第一次嘗試二連彈嘛~~~
留言列表