python入门知识大全_python基础知识有哪些
Python基礎(chǔ)知識(shí):1、引用和對(duì)象;2、可變數(shù)據(jù)類(lèi)型和不可變數(shù)據(jù)類(lèi)型;3、引用傳遞和值傳遞;4、深拷貝和淺拷貝;5、基本數(shù)據(jù)類(lèi)型;6、關(guān)鍵字、標(biāo)識(shí)符和內(nèi)置函數(shù);7、算術(shù)、賦值運(yùn)算符等等。
Python基礎(chǔ)知識(shí):
1.執(zhí)行腳本的兩種方式
Python a.py 直接調(diào)用Python解釋器執(zhí)行文件
chomd +x a.py ./a.py #修改a.py文件的屬性,為可執(zhí)行,在用 ./ 執(zhí)行a.py 文件
2、簡(jiǎn)述位、字節(jié)的關(guān)系
1bytes=8bit ,2**8=256,可以代表256中變化,
3、簡(jiǎn)述 ascii、unicode、utf-8、gbk 的關(guān)系
ascii 是最早美國(guó)用的標(biāo)準(zhǔn)信息交換碼,把所有的字母的大小寫(xiě),各種符號(hào)用 二進(jìn)制來(lái)表示,共有256中,加入些拉丁文等字符,1bytes代表一個(gè)字符,
Unicode是為了統(tǒng)一世界各國(guó)語(yǔ)言的不用,統(tǒng)一用2個(gè)bytes代表一個(gè)字符,可以表達(dá)2**16=65556個(gè),稱(chēng)為萬(wàn)國(guó)語(yǔ)言,特點(diǎn):速度快,但浪費(fèi)空間,
可以用在內(nèi)存處理中,兼容了utf-8,gbk,ASCII,
utf-8 為了改變Unicode的這種缺點(diǎn),規(guī)定1個(gè)英文字符用1個(gè)字節(jié)表示,1個(gè)中文字符用3個(gè)字節(jié)表示,特點(diǎn);節(jié)省空間,速度慢,用在硬盤(pán)數(shù)據(jù)傳輸,網(wǎng)絡(luò)數(shù)據(jù)傳輸,相比硬盤(pán)和網(wǎng)絡(luò)速度,體現(xiàn)不出來(lái)的,
gbk 是中文的字符編碼,用2個(gè)字節(jié)代表一個(gè)字符,
4、請(qǐng)寫(xiě)出 “李杰” 分別用 utf-8 和 gbk 編碼所占的位數(shù)
utf-8 是3 bytes=24bit
gbk 是2bytes=16bit
5、Pyhton 單行注釋和多行注釋分別用什么?
單行注釋 #
多行注釋 """ """三個(gè)雙引號(hào)或是三個(gè)單 引號(hào)把要解釋的內(nèi)容放中間, ‘’‘ ’’’
6、聲明變量注意事項(xiàng)有那些?
萬(wàn)能避錯(cuò)規(guī)則,以小寫(xiě)字母開(kāi)頭命名,可以加上下劃線,或者數(shù)字,
不能以Python的關(guān)鍵字命名,
能表明變量的意義
8、如何查看變量在內(nèi)存中的地址?
z=
9、執(zhí)行 Python 程序時(shí),自動(dòng)生成的 .pyc 文件的作用是什么?
.pyc 是編譯py文件后的二進(jìn)制文件,用于加速運(yùn)行
10、寫(xiě)代碼
a.實(shí)現(xiàn)用戶(hù)輸入用戶(hù)名和密碼,當(dāng)用戶(hù)名為 seven 且 密碼為 123 時(shí),顯示登陸成功,否則登陸失敗!name=
b.實(shí)現(xiàn)用戶(hù)輸入用戶(hù)名和密碼,當(dāng)用戶(hù)名為 seven 且 密碼為 123 時(shí),顯示登陸成功,否則登陸失敗,失敗時(shí)允許重復(fù)輸入三次while循環(huán):
count=for count in range(3) : name = input('name:').strip() pwd = input('pwd:').strip()if name=='seven' and pwd=='123' :print('ok')else:print('error') count += 1
c.實(shí)現(xiàn)用戶(hù)輸入用戶(hù)名和密碼,當(dāng)用戶(hù)名為 seven 或 alex 且 密碼為 123 時(shí),顯示登陸成功,否則登陸失敗,失敗時(shí)允許重復(fù)輸入三次while 循環(huán)
count =for count in range(3) : name = input('name: ') pwd = input('pwd: ')if name == 'seven' and pwd == '123' or name == 'alex' and pwd == '123':print('ok')else :print('error') count+=1
11、寫(xiě)代碼
a. 使用while循環(huán)實(shí)現(xiàn)輸出2-3+4-5+6...+100 的和count=num=0count=1for count in range(100) :if count % 2 == 0 : num=num - countelse : num=num+countprint(num)
c. 使用 while 循環(huán)實(shí)現(xiàn)輸出 1,2,3,4,5, 7,8,9, 11,12count=
d. 使用 while 循環(huán)實(shí)現(xiàn)輸出 1-100 內(nèi)的所有奇數(shù)for i in range(101) :if i %2 != 0 :print(i)count=
e. 使用 while 循環(huán)實(shí)現(xiàn)輸出 1-100 內(nèi)的所有偶數(shù)for i in range(100) :if i %2 == 0:print(i)count=
12、分別書(shū)寫(xiě)數(shù)字 5,10,32,7 的二進(jìn)制表示print(print(
14、現(xiàn)有如下兩個(gè)變量,請(qǐng)簡(jiǎn)述 n1 和 n2 是什么關(guān)系? n1 = 123 n2 = 123
n1,n2是連個(gè)不同的變量名,但值都一樣,都指向了同一個(gè)內(nèi)存地址,
16、現(xiàn)有如下兩個(gè)變量,請(qǐng)簡(jiǎn)述 n1 和 n2 是什么關(guān)系? n1 = 123456 n2 = n1
n2賦值給n1.指向同一個(gè)內(nèi)存地址,
17、如有一下變量 n1 = 5,請(qǐng)使用 int 的提供的方法,得到該變量最少可以用多少個(gè)二進(jìn)制位表示?
n1=5
print(int.bit_length(n1)) 結(jié)果 3
18、布爾值分別有什么?
False .Ture ,或1 和0
20、寫(xiě)代碼,有如下變量,請(qǐng)按照要求實(shí)現(xiàn)每個(gè)功能 name = " aleX"
a. 移除 name 變量對(duì)應(yīng)的值兩邊的空格,并輸入移除有的內(nèi)容print(name.strip())
b. 判斷 name 變量對(duì)應(yīng)的值是否以 "al" 開(kāi)頭,并輸出結(jié)果print(name.startswith(
c. 判斷 name 變量對(duì)應(yīng)的值是否以 "X" 結(jié)尾,并輸出結(jié)果print(name.endswith(
d. 將 name 變量對(duì)應(yīng)的值中的 “l(fā)” 替換為 “p”,并輸出結(jié)果print(name.replace(
e. 將 name 變量對(duì)應(yīng)的值根據(jù) “l(fā)” 分割,并輸出結(jié)果。print(name.split(
g. 將 name 變量對(duì)應(yīng)的值變大寫(xiě),并輸出結(jié)果print(name.upper()) print(name.lower())
i. 請(qǐng)輸出 name 變量對(duì)應(yīng)的值的第 2 個(gè)字符?print(name[1
j. 請(qǐng)輸出 name 變量對(duì)應(yīng)的值的前 3 個(gè)字符?print(name[:3])
k. 請(qǐng)輸出 name 變量對(duì)應(yīng)的值的后 2 個(gè)字符?
l. 請(qǐng)輸出 name 變量對(duì)應(yīng)的值中 “e” 所在索引位置?print(name.index(
21、字符串是否可迭代?如可以請(qǐng)使用 for 循環(huán)每一個(gè)元素?依賴(lài)索引
name =for i in name:print(i)
22、請(qǐng)用代碼實(shí)現(xiàn):利用下劃線將列表的每一個(gè)元素拼接成字符串,li = ['alex', 'eric', 'rain']print(
22、寫(xiě)代碼,有如下列表,按照要求實(shí)現(xiàn)每一個(gè)功能 li = ['alex', 'eric', 'rain']li = [
b. 列表中追加元素 “seven”,并輸出添加后的列表li.append(['alex', 'eric', 'rain', 'seven']
c. 請(qǐng)?jiān)诹斜淼牡?1 個(gè)位置插入元素 “Tony”,并輸出添加后的列表li.insert(
d. 請(qǐng)修改列表第 2 個(gè)位置的元素為 “Kelly”,并輸出修改后的列表li[
e. 請(qǐng)刪除列表中的元素 “eric”,并輸出修改后的列表li = [ ['alex', 'rain']
指名道姓的刪除li = [
f. 請(qǐng)刪除列表中的第 2 個(gè)元素,并輸出刪除的元素的值和刪除元素后的列表li = [
eric
['alex', 'rain']
h. 請(qǐng)刪除列表中的第 2 至 4 個(gè)元素,并輸出刪除元素后的列表li = [
'alex',
'eric',
'rain']
del li[
1:]
print(li)
k. 請(qǐng)使用 enumrate 輸出列表元素和序號(hào)(序號(hào)從 100 開(kāi)始)li = [
23、寫(xiě)代碼,有如下列表,請(qǐng)按照功能要求實(shí)現(xiàn)每一個(gè)功能 li = ["hello", 'seven', ["mon", ["h", "kelly"], 'all'], 123, 446]
a. 請(qǐng)輸出 “Kelly”li = [li[
24、寫(xiě)代碼,有如下元組,按照要求實(shí)現(xiàn)每一個(gè)功能 tu = ('alex', 'eric', 'rain')
a. 計(jì)算元組長(zhǎng)度并輸出tu = (
b. 獲取元組的第 2 個(gè)元素,并輸出print(tu[
e. 請(qǐng)使用 for、len、range 輸出元組的索引for i in range(len(tu)) :print(tu.index(tu[i]))
f. 請(qǐng)使用 enumrate 輸出元祖元素和序號(hào)(序號(hào)從 10 開(kāi)始)10 alex
11 eric
12 rainfor k in enumerate(tu,10) :print(k)(10, 'alex')(11, 'eric')(12, 'rain')25、有如下變量,請(qǐng)實(shí)現(xiàn)要求的功能tu = ("alex", [11, 22, {"k1": 'v1', "k2": ["age", "name"], "k3": (11,22,33)}, 44])
c. 請(qǐng)問(wèn) tu 變量中的"k2"對(duì)應(yīng)的值是什么類(lèi)型?是否可以被修改?如果可以,請(qǐng)?jiān)谄渲刑砑右粋€(gè)元素 “Seven”
元組,不可以
d. 請(qǐng)問(wèn) tu 變量中的"k3"對(duì)應(yīng)的值是什么類(lèi)型?是否可以被修改?如果可以,請(qǐng)?jiān)谄渲刑砑右粋€(gè)元素 “Seven”列表,可以
tu = (
26、字典
dic = {'k1': "v1", "k2": "v2", "k3": [11,22,33]}for i in dic:print(i)
b. 請(qǐng)循環(huán)輸出所有的 valuefor i in dic:print(dic[i])
c. 請(qǐng)循環(huán)輸出所有的 key 和 valuefor i
in dic:
print(i,dic[i])
d. 請(qǐng)?jiān)谧值渲刑砑右粋€(gè)鍵值對(duì),"k4": "v4",輸出添加后的字典dic[
e. 請(qǐng)?jiān)谛薷淖值渲?“k1” 對(duì)應(yīng)的值為 “alex”,輸出修改后的字典dic[
f. 請(qǐng)?jiān)?k3 對(duì)應(yīng)的值中追加一個(gè)元素 44,輸出修改后的字典dic[
g. 請(qǐng)?jiān)?k3 對(duì)應(yīng)的值的第 1 個(gè)位置插入個(gè)元素 18,輸出修改后的字典dic[
27、轉(zhuǎn)換
a. 將字符串 s = "alex" 轉(zhuǎn)換成列表s =
b. 將字符串 s = "alex" 轉(zhuǎn)換成元祖s =
b. 將列表 li = ["alex", "seven"] 轉(zhuǎn)換成元組li = [
c. 將元祖 tu = ('Alex', "seven") 轉(zhuǎn)換成列表tu = (d. 將列表 li = ["alex", "seven"] 轉(zhuǎn)換成字典且字典的 key 按照 10 開(kāi)始向后遞增dic={}for k,v in enumerate(li,10) :----li要放在前面,序號(hào)放在后面dic[k]=vprint(dic)
27、轉(zhuǎn)碼n = "老男孩"
a. 將字符串轉(zhuǎn)換成 utf-8 編碼的字節(jié),并輸出,然后將該字節(jié)再轉(zhuǎn)換成 utf-8 編碼字符串,再輸出n =
"
老男孩
"
a=n.encode(
'utf-8')
print(a)
b=a.decode(
'utf-8')
print(b)
b. 將字符串轉(zhuǎn)換成 gbk 編碼的字節(jié),并輸出,然后將該字節(jié)再轉(zhuǎn)換成 gbk 編碼字符串,再輸出a=n.encode(
28、求 1-100 內(nèi)的所有數(shù)的和count=count=
29、元素分類(lèi)
有如下值集合 [11,22,33,44,55,66,77,88,99,90],將所有大于 66 的值保存至字典的第一個(gè) key 中,
將小于 66 的值保存至第二個(gè) key 的值中。
即: {'k1': 大于 66 的所有值, 'k2': 小于 66 的所有值}li=[
總結(jié)
以上是生活随笔為你收集整理的python入门知识大全_python基础知识有哪些的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: Android音乐播放器demo
- 下一篇: 一三五、服务器部署Node项目、Vue