日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > python >内容正文

python

【python快速入门】—唐宇迪课程笔记

發布時間:2023/12/10 python 28 豆豆
生活随笔 收集整理的這篇文章主要介紹了 【python快速入门】—唐宇迪课程笔记 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

1.python數值計算

注意type()——查看變量類型

類型轉換

tang2 = int(tang) type(int(tang)) int tang_str = 'tang' type(tang_str)str tang_str = '123' type(tang_str)strfloat(tang_str)123.0

只有字符串內容是數值時,才能轉換為float。

轉換為字符串使用str()。

計算先后順序

  • ()
  • [**]
  • */
  • ±

基本數值操作

已經定義好的函數:

abs()—取絕對值;round()—四舍五入取整;min()/max()—最小/大值(逗號分隔);科學計數法—e相當于10 的幾次冪(eg:1.3e5==130000.0)

;16進制—0xFF==255

布爾類型(bool)

可以連續比較

tang = 3 1<tang <5True

2.python字符串

用+號—連接字符串(注意結果無空格)

用*號—重復(注意結果無空格)

用len()—得出字符串大小

字符串操作

假設tang = ‘1 2 3 4 5’

切分:tang.split()—[‘1’, ‘2’, ‘3’, ‘4’, ‘5’]

? tang = tang.split(‘,’)—[‘1’, ‘2’, ‘3’, ‘4’, ‘5’]

合并:與tang_str = ’ '合并

? tang_str.join(tang)—‘1 2 3 4 5’

替換:tang = ‘hello python’
tang.replace(‘python’,‘world’)—‘hello world’

? 注意此時:tang—‘hello python’,如果要替換后結果可以定義新變量 tang2 = tang.replace(‘python’,‘world’)

大寫:tang2.upper()

小寫:tang2.lower()

去掉空格:tang.strip()

去掉左邊空格:tang.lstrip()

去掉右邊空格:tang.rstrip()

打印字符串,可以使用.format()傳參

‘{} {} {}’.format(‘t’,‘y’,‘i’)—‘t y i’

定義順序—‘{2} {1} {0}’.format(‘t’,‘y’,‘i’)—‘i y t’

指定參數—‘{t} {y} {i}’.format(t = 10, y =5, i = 1)—‘10 5 1’

使用%方式:

tang = 't y i:' b = 456.0 c = 789 result = '%s %f %d' % (tang,b,c) 't y i: 456.000000 789'

3.python索引

索引—注意索引不能越界

  • 從前面是0開始
  • 從后面是-1開始

tang = ‘tang yu di’
tang[0]—‘t’;tang[-1]—‘i’;tang[-5]—‘y’

切片:(:表示從哪到哪 左閉右開的區間)

tang[0:4]—‘tang’(4是空格,開區間不取);tang[5:]—‘yu di’;tang[-3:]—’ di’

全部:tang[:]—‘tang yu di’

隔幾個:tang[::2]—‘tn ud’

4.python List結構

列表

  • 通過[]來創建一個list結構
  • 里面放任何類型都可以的,沒有一個長度限制

tang = [1,‘tangyudi’,3.5];tang = list([1,2,3])

list操作

假設a = [123,456] b = [‘tang’,‘yudi’]

+:a + b—[123, 456, ‘tang’, ‘yudi’]

*:a * 3—[123, 456, 123, 456, 123, 456]

更改:a[0] = 789 a—[789, 456];a[:] = [‘tang’,‘yudi’] a—[‘tang’, ‘yudi’]

求長度:len()

假設 a = [1,2,3,4,5,6,7,8,9]

刪除:del a[0] a—[2, 3, 4, 5, 6, 7, 8, 9];del a[3:] a—[2, 3, 4]

判斷列表是否存在某元素:8 in a—True

list中也可以添加list(任何類型):a = [1,2,[3,4]];a[2][1]—4

記數:.count()—判斷列表中某元素有多少個

求索引:.index()—得出某元素的索引

列表添加

添加:.append()依次添加

插入:.insert(索引,元素)

移除:.remove(某元素)若元素有多個重復,從索引低的開始移除

彈出:.pop(索引)

排序:.sort()改變原始list;不改變原始list:t2=sorted(t);

倒序:.reverse()

5.python 字典

字典結構

定義:tang = {};tang = dict()

字典結構操作 key-value 沒有先后順序

tang[key] = value;

查找:tang[key];用key值索引

字典里可以嵌套字典:

tang = {} d1 = {'tang':123,'yudi':456} d2 = {'tang2':456,'yudi2':789} tang['test1'] = d1 tang['test2'] = d2 tang{'test1': {'tang': 123, 'yudi': 456}, 'test2': {'tang2': 456, 'yudi2': 789}}

tang = dict([(‘tang’,123),(‘yudi’,456)])—{‘tang’: 123, ‘yudi’: 456}

改變value值:tang[‘tang’] += 1—{‘tang’: 124, ‘yudi’: 456}

get方法:tang.get(‘fengzi’,‘meiyou’)—‘meiyou’

彈出:tang.pop(‘tang’)—124

刪除:del tang[‘yudi’] tang—{}

更新:舊字典.update(新字典)

判斷字典中是否存在某key—key in 字典—true/false

調用key集—tang.keys()

調用value集—tang.values()

調用全部—tang.items()

6.python 集合—唯一性

會保留下來唯一的那些元素

tang = set([123,123,123,456,456,456,789]) tang—{123, 456, 789}

集合操作

a,b調換順序無影響

并集:a.union(b) ;a|b

交集:a.intersection(b);a&b

a,b調換順序結果不一樣

差集:a.difference(b);a - b;b-a

包含:b.issubset(a)—a包含b?;b <= a;b > a

添加元素:a.add(4);

更改集合:a.update([4,5,6])—增添沒有的元素

刪除元素:a.remove(1)

彈出元素:a.pop()—按照順序(從頭開始)

7.賦值機制

t = 1000 y = t id(t) 2683811812688 id(y) 2683811812688 t is y True y = 123456 id(y) 2683811812976 t is y False

并且,在python中,如果定義兩個較大的數(數值相同),分配兩個不同的單元,小數值則分配到同一單元?!岣邇却孢\行效率。

8.python—判斷結構

t = 50 if t >200:print ('200') elif t < 100:print ('100') else:print ('100-200')100

注意:縮進

tang = {'t':123,'y':456} if 't' in tang:print ('ok')ok

9.python—循環

while循環

t = 0 while t < 10:print (t)t += 1 0 1 2 3 4 5 6 7 8 9 ts = set(['tang','yu','di']) while ts:t = ts.pop()print (t) yu tang di

for循環

t = [123,435,1234,513245,11243,1234,1234,534,346] for i in range(len(t)):print (t[i]) 123 435 1234 513245 11243 1234 1234 534 346 tang = [10,11,12,13,14,15] for i in tang:if i%2 == 0:print (i)else:continueprint (i) 10 10 12 12 14 14

10.python 函數

def add_ab(a,b):return (a+b) tang = add_ab(3,5) tang8 def add_number(a,*args):#接收不限個數的參數b = 0for i in args:a += ib += areturn a,b a,b = add_number(1,2,3) print (a,b)6 9 def add_number2(a,**kwargs):#參數只能是鍵值對(字典)for arg,value in kwargs.items():print (arg,value) add_number2(1,x=2,y=3)x 2 y 3

11.python 包

腳本文件的執行

%%writefile tang.pytang_v = 10def tang_add(tang_list):tang_sum = 0for i in range(len(tang_list)):tang_sum += tang_list[i]return tang_sum tang_list = [1,2,3,4,5] print (tang_add(tang_list))Writing tang.py%run tang.py15

print (tang.tang_v)—10;

更改模塊內變量:tang.tang_v = 100

調用:tang_list = [10,11,12] tang.tang_add(tang_list)—33

導入:import tang as tg 可以使用變量以及函數(tg.tang_v;tg.tang_add(tang_list))

—導入部分:from tang import tang_v,tang_add (tang_v;tang_add(tang_list))

—導入全部:from tang import * (tang_v;tang_add(tang_list))

12.異常處理模塊

捕捉異常

try:

模塊

except 錯誤名:

print(錯誤原因)

import mathfor i in range(10):try:input_number = input('write a number')if input_number[0] == 'q':breakresult = 1/math.log(float(input_number))#log a>0print (result)except ValueError:print ('ValueError: input must > 0') write a number4 0.7213475204444817 write a number0 ValueError: input must > 0 write a numberq import mathfor i in range(10):try:input_number = input('write a number')if input_number == 'q':breakresult = 1/math.log(float(input_number))#分母不為0print (result)except ValueError:print ('ValueError: input must > 0')except ZeroDivisionError:print ('log(value) must != 0')except Exception:print ('ubknow error') write a number2 1.4426950408889634 write a number3 0.9102392266268373 write a number-1 ValueError: input must > 0 write a number1 log(value) must != 0 write a numberq

自定義異常

class TangError(ValueError):passcur_list = ['tang','yu','di'] while True:cur_input = input()#輸入if cur_input not in cur_list:raise TangError('Invalid input: %s' %cur_input)#提出一個錯誤 tang up --------------------------------------------------------------------------- TangError Traceback (most recent call last) <ipython-input-3-5fb5bf1bf40e> in <module>()6 cur_input = input()#輸入7 if cur_input not in cur_list: ----> 8 raise TangError('Invalid input: %s' %cur_input)#提出一個錯誤TangError: Invalid input: up

關鍵字finally

無論try的模塊中有無異常,最后都可以打印出finally命令行

try:1/0 except:print ('==0') finally:print ('finally')==0 finally

使python程序遇到某些危險的情況時可以提前終止

13.文件操作

%%writefile tang.txt hello python

打開:txt = open(‘./tang.txt’)

閱讀:txt_read = txt.read()

單行讀:lines = txt.readlines()

關閉:txt.close()

寫:txt = open(‘tang_write.txt’,‘w’) ;txt.write(‘jin tian tian qi bu cuo’);txt.close() 注意‘w’模式會覆蓋原文—‘a’是追加模式

注意:

寫完之后必須關閉,未關閉可能沒寫上。

with open('tang_write.txt','w') as f:f.write('jin tian tian qi bu cuo')

with方法可以不加close()

14.類:面向對象

class people:'幫助信息:XXXXXX'#所有實力都會共享number = 100#構造函數,初始化的方法,當創建一個類的時候,首先會調用它def __init__(self,name,age):#初始化self.name = nameself.age = agedef display(self):print ('number = :',people.number)def display_name(self):print (self.name) people.__doc__ '幫助信息:XXXXXX'

調用類

p1 = people('tdi',30)p2 = people('python','40')p2.name 'python'p1.display() number = : 100

修改:p2.name = ‘hello’

刪除:del p2.name

查看某個對象是否有某個屬性:hasattr(p1,‘name’)—True

得到某個對象的某個屬性:getattr(p1,‘name’)

設置某個對象的某個屬性:setattr(p1,‘name’,‘yTang’)

刪除某個對象的某個屬性:delattr(p1,‘name’)

繼承

class Parent: #定義父類number = 100def __init__(self):print ('調用父類構造函數')def parentM(self):print ('調用父類方法')def setAttr(self,attr):Parent.parentAttr = attrdef getAttr(self):print ('父類屬性:',Parent.parentAttr)def newM(self):print ('父類要被重新的方法')class child(Parent): #定義子類def __init__(self):print ('調用子類構造函數')def childM(self):print ('調用子類方法')def newM(self):print ('子類給它改掉了') c = child() c.childM() c.parentM() c.setAttr(100) c.getAttr() c.newM()調用子類構造函數 調用子類方法 調用父類方法 父類屬性: 100 子類給它改掉了

15.時間—import time

當前時間:print (time.time())—一般使用兩個時間的差異值

易觀察的當前時間:print (time.localtime(time.time()))

time.struct_time(tm_year=2022, tm_mon=4, tm_mday=13, tm_hour=21, tm_min=21, tm_sec=21, tm_wday=2, tm_yday=103, tm_isdst=0)

格式化時間類型

print (time.asctime(time.localtime(time.time()))) Wed Apr 13 21:23:03 2022print (time.strftime('%Y-%m-%d %H:%M:%S',time.localtime())) 2022-04-13 21:23:00

日歷:

import calendar print (calendar.month(2022,4)) #print (help(calendar.month))April 2022 Mo Tu We Th Fr Sa Su1 2 34 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30

總結

以上是生活随笔為你收集整理的【python快速入门】—唐宇迪课程笔记的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。