03 基本數(shù)據(jù)類型

03 基本數(shù)據(jù)類型

快捷鍵

  • Ctrl + / 多行注釋
  • Tab 縮進(jìn)
  • Tab + Shift 反縮進(jìn)
  • Shift + 回車 切換到下一行
  • Alt + Enter 識別一些簡單的錯誤

查閱官網(wǎng) Documentation

  • Library Reference-->Built-in Fuctions 函數(shù)
  • Language Refenrence-->other tokens 關(guān)鍵字

1. ?個概念

  • 代碼塊
    就是代碼的一種分組機(jī)制,同一個代碼塊中要么都執(zhí)行要么都不執(zhí)行
    代碼塊以縮進(jìn)開始

if False:
print('haha')
print(666)

  • pass語句
    代表的是空語句
    作用:主要就是保持程序結(jié)構(gòu)的完整性,一般做占位語句

a=0
if a > 5:
...pass

  • 函數(shù)
    函數(shù) xxx()
    方法 yyy.xxx() 特殊的函數(shù),yyy就是代表對象,xxx()代表的是yyy這個對象中方法

import requests
requests.get()

def fn():
......print('heiheihei')
r = fn()
print(r)

1.1表達(dá)式

  • 表達(dá)式
    是由數(shù)字、算符、數(shù)字分組符號(括號)、?由變量和約束變量等 以能求得數(shù)值的有意義排列?法所得的組合
  • 表達(dá)式特點(diǎn)
    表達(dá)式?般僅僅?于計算?些結(jié)果,不會對程序產(chǎn)?實(shí)質(zhì)性的影響
    如果在交互模式中輸??個表達(dá)式,解釋器會?動將表達(dá)式的結(jié)果輸出

1.2語句

  • ?個語法上?成體系的單位,它由?個詞或句法上有關(guān)連的?組詞構(gòu)成
  • 語句的執(zhí)??般會對程序產(chǎn)??定的影響,在交互模式中不?定會輸出語句的執(zhí)?結(jié)果

1.3程序(program)

  • 程序就是由?條?條的語句和?條?條的表達(dá)式構(gòu)成的。

1.4函數(shù)(function)

  • 函數(shù)就是?種語句,函數(shù)專??來完成特定的功能
  • 函數(shù)?的形如:xxx()
  • 函數(shù)的分類:
    內(nèi)置函數(shù) : 或者內(nèi)建函數(shù),就是由語法規(guī)定存在的函數(shù),這些函數(shù),包含在編譯器的運(yùn)?時庫中,程序員不?單獨(dú)書寫代碼實(shí)現(xiàn)它,只需要調(diào)?既可。
    ?定義函數(shù) : 由程序員?主的創(chuàng)建的函數(shù) 當(dāng)我們需要完成某個功能時,就可以去調(diào)?內(nèi)置函數(shù),或者?定義函數(shù)
  • 函數(shù)的2個要素
    參數(shù): ()中的內(nèi)容我們稱之為參數(shù),可以有參數(shù)也可以沒有參數(shù),如果有多個參數(shù)要用英文逗號隔開
    返回值:函數(shù)返回的結(jié)果,有的函數(shù)有返回值,有的函數(shù)沒有返回值

2.標(biāo)識符

  • Python語言的組成:1.關(guān)鍵字、2.標(biāo)識符、3.注釋、4.變量和數(shù)值、5.運(yùn)算符、6.語句、7.函數(shù)、8.序列

2.1關(guān)鍵字

  • python?些具有特殊功能的標(biāo)識符,這就是所謂的關(guān)鍵字關(guān)鍵字,是python 已經(jīng)使?的了,所以不允許開發(fā)者??定義和關(guān)鍵字相同的名字的標(biāo)識符


2.2標(biāo)識符概念

  • 開發(fā)?員在程序中?定義的?些符號和名稱。標(biāo)識符是??定義的,如變量名 、函數(shù)名等
  • 組成:由26個英?字???寫,數(shù)字 0-9 符號 _$
  • 標(biāo)識符的規(guī)則:
    1.標(biāo)識符中可以包含字?、數(shù)字、_,但是不能使?數(shù)字開頭
    例如: name1 name_1 _name1 1name(不?)
    2.Python中不能使?關(guān)鍵字和保留字來作為標(biāo)識符
  • 命名?式
    1.駝峰命名法
    ?駝峰式命名法: 第?個單詞以?寫字?開始;第?個單詞的?字??寫,例如:myName、aDog
    ?駝峰式命名法: 每?個單字的?字?都采??寫字?,例如: FirstName、LastName
    2.下劃線命名法
    不過在程序員中還有?種命名法?較流?,就是?下劃線“_”來連接所有 的單詞,?如 get_url buffer_size

3.基本數(shù)據(jù)類型

  • 數(shù)據(jù)類型指的就是變量的值的類型,也就是可以為變量賦哪些值

3.1整數(shù)和?數(shù)

  • 整數(shù) : 所有整數(shù) 例如 : a = 1 b = 100 c =999 都是int類型

c = 123_465_798
print(c)
結(jié)果:123465798

  • ?數(shù)常量 : 所有?數(shù) 例如 a = 1.2 b=6.66 ?float類型表示

3.2布爾值和空值

  • 布爾: 只有2個值?個是True ?個是False (布爾值也屬于特殊的整型:True相當(dāng)于1,F(xiàn)alse相當(dāng)于0)

print(1+True) #True代表的是1
print(2-False) #False代表的是0

while True:
print(1)

<---->等價于
while 1:
print(1)

  • 常量:只有?個數(shù)值就是None 也就是空值

4.變量

4.1變量的概念

  • 變量是計算機(jī)內(nèi)存中的?塊區(qū)域,存儲規(guī)定范圍內(nèi)的值,值可以改變,通俗的說變量就是給數(shù)據(jù)起個名字。
  • 變量命名規(guī)則
    變量名由字?、數(shù)字、下劃線組成要符合標(biāo)識符的命名規(guī)范
    數(shù)字不能開頭
    不能使?關(guān)鍵字
  • 注意 : 是兩個對象相等和兩個對象是同?個對象是兩個概念

s1 = {'Jerry':'Python'}
import copy
s2 = copy.deepcopy(s1)
print(s2) # {'Jerry': 'Python'}
print(id(s1),id(s2))
print(s1==s2) #True

4.2變量的運(yùn)算

  • 變量的運(yùn)算就是正常的四則運(yùn)算 ,需要注意的是在運(yùn)算過程中含有浮點(diǎn)數(shù),那么它返回的就是?個浮點(diǎn)數(shù)類型

5.字符串

5.1什么是字符串

  • 字符串是由數(shù)字、字?、下劃線組成的?串字符
  • 注意
    單引號和雙引號不能混合使?
    Python中??對雙引號或者?對單引號包裹的內(nèi)容就是字符串

5.2轉(zhuǎn)義字符

  • 轉(zhuǎn)義字符是?種特殊的字符常量。轉(zhuǎn)義字符以反斜線""開頭,后跟?個或?個字符。轉(zhuǎn)義字符具有特定的含義,不同于字符原有的意義,故稱“轉(zhuǎn)義”字符
  • 總結(jié)
  • \t 表示制表符
  • \n 表示換?符
  • \ \ 表示反斜杠
  • \ ' 表示 '
  • \ '' 表示 ''

s1 = '窈窕淑女\t君子好逑'
s2 = '窈窕淑女\n君子好逑'
print(s1,s2)
結(jié)果:
1:窈窕淑女 君子好逑
2:窈窕淑女
.....君子好逑

5.3?字符串

  • ?字符串 ?叫做?檔字符串 ?三重引號來表示?個?字符串''' '''
  • 三重引號可以換?,并且會保留字符串中的格式

s = '關(guān)關(guān)雎鳩,在河之洲,窈窕淑女,君子好逑'
s = '關(guān)關(guān)雎鳩,\n在河之洲,\n窈窕淑女,\n君子好逑'
s = '''關(guān)關(guān)雎鳩,
在河之洲,
窈窕淑女,
君子好逑
'''

5.4格式化字符串

  • 第?種格式化字符串 拼串

s = 'hello'
print('s = '+ s)
結(jié)果:s = hello

  • 第?種格式化字符串 參數(shù)傳遞

s = 'hello'
print('abc','bcd')
print('s =',s)
結(jié)果:
abc bcd
s = hello

  • 第三種格式化字符串 占位符
    在創(chuàng)建字符串的時候可以在字符串中指定占位符
    %s 字符串占位
    %f 浮點(diǎn)數(shù)占位
    %d 整數(shù)占位

s1 = 's = %s'%'hello'
s2 = 's = %s,s2 = %s'%('hello','world') # 有幾個占位就得有幾個對應(yīng)的值
print(s1)
print(s2)
結(jié)果:
s = hello
s = hello,s2 = world

s = '張三 %d歲。%s歲數(shù)更大!'%(22,'李四')
print(s)
結(jié)果:張三 22歲。李四歲數(shù)更大!

  • 第四種格式化字符串 f'{變量}'/ str.format()
    二者區(qū)別:前提有變量的時候,用f'{變量}';沒有變量的時候,用str.format,花括號里面為空或者從0、1開始
    注:r' ' 意思是r后面當(dāng)成普通字符串處理即可,例:r'G:/news'(其中/n不是換行符,就是普通字符串)
    f'{ }' 里面是個占位符,有個變量,沒有f的時候打印的是這個變量字符串,有f之后打印的是變量代表的值

s1 = '鋼鐵俠'
s2 = '葫蘆娃'
s = f'hello {s1},{s2}'
print(s)
結(jié)果:hello 鋼鐵俠,葫蘆娃

age = 22
name = '李四'
s = f'張三 {age}歲。{name}歲數(shù)更大!'
print(s)
結(jié)果:張三 22歲。李四歲數(shù)更大!

s = 'i like {0}' #大括號里的索引從0開始
b = s.format('python')
print(b)
結(jié)果:i like python

s = 'i like {1},{0}' #0、1次序沒有要求
s1 = s.format('美女','美食')
print(s1)
結(jié)果:i like 美食,美女

s = '張三 {}歲。{}歲數(shù)更大!'
s1 = s.format(22,'李四')
print(s1)
結(jié)果:張三 22歲。李四歲數(shù)更大!

練習(xí):打印 521 女神 嫁給我好嗎?

1、print("521 "+"女神 "+"嫁給我好嗎?")
2、print("521","女神","嫁給我好嗎?")
3、s="%s,%s,%s"%("521","女神","嫁給我好嗎?")
.....print(s)
4、s1="521"
......s2="女神"
......s3="嫁給我好嗎?"
......s=f'{s1},{s2},{s3}'
......print(s)
5、s='{},{},{}'
.....s1=s.format("521","女神","嫁給我好嗎?")
.....print(s1)
結(jié)果:
521 女神 嫁給我好嗎?
521 女神 嫁給我好嗎?
521,女神,嫁給我好嗎?
521,女神,嫁給我好嗎?
521,女神,嫁給我好嗎?


5.5字符串的其他操作

  • len() 字符串的?度

print(len('iloveyou12'))
結(jié)果:10

  • max() 最?值 #比較的是字符所對應(yīng)的ascii值
  • min() 最?值

c = '1234567'
print(max(c))
print(min(c))
結(jié)果:7 1

a = 'Jerry Python'
print(max(a))
print(min(a)) #最小值是空格
結(jié)果:y ' '

  • split()分割字符串

s = 'i love china'
b = s.split(' ')
print(b)
結(jié)果:['i', 'love', 'china']

  • join()拼接字符串
    str.join() : str 你要分割的方式

b = 'abc' # 以 -的方式來分割字符
result = '-'.join(b)
print(result)
結(jié)果:a-b-c

  • 去空格
    s.strip() 左右兩邊去空格
    s.lstrip() 去左邊空格
    s.rstrip() 去右邊空格

e = ' Python '

print(e.strip())
print(e.rstrip())
結(jié)果:Python
.............Python

  • 字符串??寫
    s.upper() 全部?寫
    s.lower() 全部?寫
    s.isupper() 判斷是不是?寫
    s.islower() 判斷是不是?寫

a = 'python'
print(a.islower())
結(jié)果:True

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。
禁止轉(zhuǎn)載,如需轉(zhuǎn)載請通過簡信或評論聯(lián)系作者。

友情鏈接更多精彩內(nèi)容