<em>Mac</em>Book项目 2009年学校开始实施<em>Mac</em>Book项目,所有师生配备一本<em>Mac</em>Book,并同步更新了校园无线网络。学校每周进行电脑技术更新,每月发送技术支持资料,极大改变了教学及学习方式。因此2011
2021-06-01 09:32:01
不同型別的變數可以進行的運算是不同的,所以必須理解變數的型別,python中資料型別可以分為:
內建型別:
自定義型別:
數值型別:
字串的表示:
# 用單引號表示: 'hello'
# 用雙引號表示:"我用python"
# 用3個單引號表示:可以表示多行文字,例如:
'''偉大
的
祖國
'''
# 用3個雙引號表示:可以表示多行文字,例如:
"""生死看淡,
不服就幹"""
跳脫字元 | 描述 | 跳脫字元 | 描述 |
| 表示一個普通字元單引號 | n | 換行 |
| 表示一個普通字元雙引號 | r | 回車 |
| 一個普通的三單引號 | | 一個普通的字元 |
| 一個普通的三雙引號 | a | 響鈴 |
t | tab鍵 | b | 回刪一個字元 |
計算機不能直接儲存字串,但我們可以將字元編碼,例如用65表示大寫字元A,66表示大寫字元B....等這種表示方式就是美國類的ASCII碼,只能表示127個字元,但對於美國人來說已經足夠了。一但能用整數表示字元,我們可以很方便的把整數用二進位制表示,那麼字串也就和容易儲存到計算機了。
但還有很多其他國家的語言是不能用ASCII表示的,所有ISO組織就推出了unicode碼,用來表示任何一種語言的字元,unicode碼也稱之為萬國碼,通用碼,可以表示任何一種語言的任何一個字元。unicdoe碼有多中表示方式,例如:utf-8、utf-16、utf-32等。一般使用較多的是utf-8,utf-8是一種變長的編碼,表示一個字元可能用一個位元組,也可能是三個位元組
中文常用編碼一般用GBK編碼,用2個位元組表示一個漢字
我們可以使用type和isinstance來測試和判斷資料型別
#type用法: type(obj) 功能:返回obj的資料型別 引數:obj是你要測試變數或數值 範例: age = 10 name = 'hello' print(type(name),type(age)) #判斷變數是否是指定型別 if type(age) is int: print('是') else: print('否') #isinstance用法: isinstance(obj,typename) 功能:判斷obj是否是指定型別,是返回True,否返回False 引數: objobj是你要判斷的變數或數值 typename是指定資料型別,可以是int,float,str等。也可是一個 型別的元組,例如:(int,float) 範例: age = 10 name = 'hello' print(isinstance(age,int)) print(isinstance(name,(str,int)) #只要name是str或int的一種就返回True if isinstance(age,int): print('是') else: print('否') #type和isinstance的區別 type判斷基本型別是沒問題的,但無法判斷子類物件是父類別的一種 isinstance可以判斷子類物件是父類別的一種 class A: pass class B(A): pass objA = A() objB = B() #輸出否 if type(objB) is A: print('是') else: print('否') print(isinstance(objB,A)) #True
結論:優先使用isinstance
在數學上為了計算結果,我們會寫一些式子計算,例如:
30 + 5
這是數學中的計算式,python中為了計算也有類似的式子,叫表示式。在表示式中30和5稱作運算元,+稱之運運算元。表示式的目的在於計算結果。表示式構成:
綜合上述,所謂表示式就是由運算元和運運算元組成䄦符合python語法的式子。要寫表示式首先要學習運運算元。關於運運算元要知道兩件事情
a = 20 b = 10
運運算元 | 說明 | 範例 |
- | 負號,取原數的相反數 | a = 10 print(-a) #-10 |
+ - * / | 加減乘除,同數學上一樣 | a + b = 30 a - b = 10 a * b = 200 a / b = 2 |
% | 模運算,即求 a整除以b的餘數 | a % 10 = 0 |
// | 整除 | a // b = 2 |
** | 對運運算元進行指數(冪)計算 | a ** b 表示20的10次方 |
函數名 | 函數的說明 | 範例 |
abs | 取絕對值 | abs(-10) |
pow(x,y) | x的y次方 | pow(10,2)求10的平方 |
round(x,[n]) | 浮點數的4舍5入, n代表保留小數的位數 | round(3.456) |
max() | 求給定引數的最大值 | max(21,43,65,75,86,32,3,45) |
min() | 求給定引數的最小值 | min(21,43,65,75,86,32,3,45) |
math.ceil() | 需要匯入import math庫 向上取整 | math.ceil(18.1) #19 |
math.floor() | 需要匯入import math庫 向下取整 | math.floor(18.1) #18 |
math.sqrt | 需要匯入import math庫 求平方根 | math.sqrt(100) |
獲取亂數,需要引入random庫。
import random
函數名 | 函數說明 |
random.randrange(start,stop,step) | start 指定範圍的起始值 包含本身,預設是0;stop 指定範圍的結束值 不包含本身; step 步長,預設步長是1。該函數返回一個整數 |
random.randint(start,end) | 返回[start end]之間的一個隨機整數,start必須小於end |
random.random() | 返回一個[0.0,1.0)之間的隨機小數 |
注意:
a = 5; b = 10; c = 20
運運算元 | 說明 | 範例 |
= | 簡單賦值, 將b+c的結果賦給a | a = b +c #a=30 |
+= | a += b等價於 a = a +b | a = 15 |
-= | a -= b等價於 a = a - b | a = -5 |
*= | a *= b等價於 a = a * b | a = 50 |
/= | a /= b 等價於a = a / b | a = 0.5 |
%= | a %= b等價於a = a % b | a = 5 |
//= | a //= b等價於 a = a // b | a = 0 |
**= | a **= b等價於a = a ** b |
注意:
a = 2 b = 3 a *= b + 2 #等價於 a = a * (b + 2) print(a) # a = 10
關係運算就是比較運算,如果表示式成立,返回True,否則返回False。關係運算的結果是布林值。
運運算元 | 範例 | 說明 |
== | a == b | a和b值相等,結果是True,a和b值不相等結果為False |
!= | a != b | a不等於b 結果為True,否則結果為True |
> | a > b | a大於b結果為True,否則為False |
>= | a >= b | a大於等於b結果為True,否則為False |
< | a < b | a小於b結果為True,否則為False |
<= | a <= b | a小於等於b結果為True,否則為False |
注意:
1 < a < 3
等價於 a > 1 and a < 3邏輯運運算元可以用於構造複雜條件。邏輯運運算元包括:
在邏輯運算中,False、None、0、0.0、‘’(空字串)被看做假(False),其它的看做真(True)
a | b | a and b |
真 | 任意值 | b的值 |
假 | 任意值 | a的值 |
a | b | a or b |
真 | 任意值 | a的值 |
假 | 任意值 | b的值 |
a | not a |
真 | False |
假 | True |
小結:a為真則表示式為False,否則表示式為True
is: 判斷兩個識別符號是否參照自同一個實體【物件】,比較的是兩個物件的id是否一樣,如果相同為真,否則為假
is not:判斷兩個識別符號是不是參照自不同的實體【物件】如果兩個物件的id不同結果為真,否則為假
id()函數獲取實體的id(地址)
注意:is和==的區別
主要應用在序列中
in:如果在指定的序列中找到指定的值,則返回True,否則返回False
not in:如果在指定的序列中未找到指定的值,則返回True,否則返回False
表示式1 if 條件 else 表示式2,如果條件為真假結果是表示式1的值,否則結果是表示式2的值
到此這篇關於python變數資料型別和運運算元的文章就介紹到這了,更多相關python 運運算元內容請搜尋it145.com以前的文章或繼續瀏覽下面的相關文章希望大家以後多多支援it145.com!
相關文章
<em>Mac</em>Book项目 2009年学校开始实施<em>Mac</em>Book项目,所有师生配备一本<em>Mac</em>Book,并同步更新了校园无线网络。学校每周进行电脑技术更新,每月发送技术支持资料,极大改变了教学及学习方式。因此2011
2021-06-01 09:32:01
综合看Anker超能充系列的性价比很高,并且与不仅和iPhone12/苹果<em>Mac</em>Book很配,而且适合多设备充电需求的日常使用或差旅场景,不管是安卓还是Switch同样也能用得上它,希望这次分享能给准备购入充电器的小伙伴们有所
2021-06-01 09:31:42
除了L4WUDU与吴亦凡已经多次共事,成为了明面上的厂牌成员,吴亦凡还曾带领20XXCLUB全队参加2020年的一场音乐节,这也是20XXCLUB首次全员合照,王嗣尧Turbo、陈彦希Regi、<em>Mac</em> Ova Seas、林渝植等人全部出场。然而让
2021-06-01 09:31:34
目前应用IPFS的机构:1 谷歌<em>浏览器</em>支持IPFS分布式协议 2 万维网 (历史档案博物馆)数据库 3 火狐<em>浏览器</em>支持 IPFS分布式协议 4 EOS 等数字货币数据存储 5 美国国会图书馆,历史资料永久保存在 IPFS 6 加
2021-06-01 09:31:24
开拓者的车机是兼容苹果和<em>安卓</em>,虽然我不怎么用,但确实兼顾了我家人的很多需求:副驾的门板还配有解锁开关,有的时候老婆开车,下车的时候偶尔会忘记解锁,我在副驾驶可以自己开门:第二排设计很好,不仅配置了一个很大的
2021-06-01 09:30:48
不仅是<em>安卓</em>手机,苹果手机的降价力度也是前所未有了,iPhone12也“跳水价”了,发布价是6799元,如今已经跌至5308元,降价幅度超过1400元,最新定价确认了。iPhone12是苹果首款5G手机,同时也是全球首款5nm芯片的智能机,它
2021-06-01 09:30:45