python | 列表,元組,字符串,集合,字典

列表:

  • 可以容納任意數目不同類型的元素(支持我們學過的任意數據類型)
  • 元素之間有先后順序
  • 用中括號包裹,每個元素用逗號隔開

例如:

students = ['林黛玉','薛寶釵','賈元春','賈探春','史湘云','妙玉','賈迎春','賈惜春','王熙鳳','賈巧姐','李紈','秦可卿'
]

列表可容納任意個元素,當然也包括 0 個元素。這樣的列表我們稱為?空列表,只用一對中括號?[]?表示即可,中間不加逗號。

反向索引的數字和我們日常生活中的倒數數字是一樣的,用?-1?表示倒數第一個,用?-2?表示倒數第二個。

正向索引?和?反向索引?(比如:students[-1])都是通過位置,查找對應值的方法

快速獲取列表索引值的方法:使用?列表.index(元素內容)?的形式

列表元素的修改:

通過?列表[索引] = 新值?的格式

# 第二個名字,索引為 1
students[1] = '賈寶玉'

列表元素的添加:

在列表末尾添加一個元素:append()?方法會在列表末尾新增一個元素,同時列表長度加一

students.append('賈寶玉')

在列表中間某個位置插入一個元素:insert()?方法

students.insert(9, '賈璉')

列表元素的刪除:

用列表的?pop()?方法,pop()?的功能是:返回列表指定位置的元素,并刪除這個元素。?pop()?可以傳入一個參數,表示要刪除的元素的索引,如果不傳入,就默認為最后一個元素的索引。

students.pop()

可以使用更加便捷的?del?語句來操作列表,格式為:del 列表[索引]

del students[0]

通過?列表.remove(值)?的方式,我們可以在列表中找到?第一個?指定的值,然后將它刪除。

students.remove('王熙鳳')

列表的分片:

列表分片用一對以冒號分隔的索引位置表示,格式為?列表[起始索引:結束索引]。比如要獲取?students?中第三到第五個元素,也就是索引為?234?的元素,就要寫成?students[2:5]

on_duty = ['賈璉', '王熙鳳', '林黛玉', '賈寶玉', '李紈', '薛寶釵', '妙玉']# 打印周一周二值日的人
print(on_duty[:2])# 打印周三到周五值日的人
print(on_duty[2:5])# 打印周末值日的人
print(on_duty[-2:])

截取前三個元素,就寫成?list[:3];而截取最后四個元素,就寫成?list[-4:];截取中間部分?list[a:b],分片長度就是 b - a。

列表常用方法:

統計元素出現的次數:count()?方法可以統計元素在列表中出現的次數

students = ['林黛玉', '賈寶玉', '薛寶釵', '賈寶玉']
print(students.count('賈寶玉'))
# 輸出:2

排序:sort()?是一個很強大的方法,可以對列表內的元素進行排序。

str_list = ["lin", "jia", "xue"]
str_list.sort()
print(str_list)
# 輸出:['jia', 'lin', 'xue']num_list = [4, 2, 1, 9]
num_list.sort()
print(num_list)
# 輸出:[1, 2, 4, 9]
  • 字符串列表的排序按照每個元素首字母的順序來排序,比如 j 在 l 前面,l 在 x 前面,可以簡單地按照 26 個字母順序表即可;
  • 數值列表的排序是按照數值大小從小到大進行排序,比如 1 比 2 小,所以 1 在 2 前面。

反轉、復制和清空:reverse()copy()clear()?方法

# reverse() 方法:將列表順序反轉
students = ["林黛玉", "賈寶玉", "薛寶釵"]
students.reverse()
print(students)
# 輸出:['薛寶釵', '賈寶玉', '林黛玉']# copy() 方法:復制一個同樣的列表
students1 = ["林黛玉", "賈寶玉", "薛寶釵"]
students2 = students1.copy()
print(students2)
# 輸出:['林黛玉', '賈寶玉', '薛寶釵']# clear() 方法:清空列表
students = ["林黛玉", "賈寶玉", "薛寶釵"]
students.clear()
print(students)
# 輸出:[]

列表的基本運算:

成員運算符 in:用來判斷一個元素是否在一個列表中,格式為?元素 in 列表。這是一個布爾表達式,如果元素在列表中,結果為布爾值?True,反之為?False

students = ['林黛玉','薛寶釵','賈元春','妙玉','賈惜春','王熙鳳','秦可卿','賈寶玉'
]
miaoyu_in = '妙玉' in students
print(miaoyu_in)
# 輸出:Truexiangyun_in = '史湘云' in students
print(xiangyun_in)
# 輸出:False

加法和乘法:

# 列表的加法
students = ['林黛玉', '薛寶釵', '賈元春', '賈探春', '史湘云', '妙玉', '賈迎春', '賈惜春', '王熙鳳', '賈璉', '賈巧姐', '李紈', '秦可卿', '賈寶玉']parents = ['賈敬', '賈政', '王夫人', '賈赦', '邢夫人']meeting = students + parents# 打印 meeting 的結果,以及最終人數
print(meeting)
print('與會人數為', len(meeting), '人')
# 輸出:
# ['林黛玉', '薛寶釵', '賈元春', '賈探春', '史湘云', '妙玉', '賈迎春', '賈惜春', '王熙鳳', '賈璉', '賈巧姐', '李紈', '秦可卿', '賈寶玉', '賈敬', '賈政', '王夫人', '賈赦', '邢夫人']
# 與會人數為 19 人#列表的乘法
lag_behind = ['賈探春', '秦可卿', '賈惜春', '賈璉']
# 用乘法快速生成輪班表
recite_list = lag_behind * 5print(recite_list)
# 輸出:['賈探春', '秦可卿', '賈惜春', '賈璉', '賈探春', '秦可卿', '賈惜春', '賈璉', '賈探春', '秦可卿', '賈惜春', '賈璉', '賈探春', '秦可卿', '賈惜春', '賈璉', '賈探春', '秦可卿', '賈惜春', '賈璉']

列表的擴展操作:

zip() 函數:它的作用是將兩個長度相同的列表合并起來,相同位置的元素會被一一組對,變成一個元組。結果返回一個組合好的打包對象,需要我們再用?list()?函數轉換回列表。

midterm_rank = ['妙玉','薛寶釵','賈元春','王熙鳳','林黛玉','賈巧姐','史湘云','賈迎春','賈寶玉','李紈','賈探春','秦可卿','賈惜春','賈璉'
]scores = [100, 92, 77, 85, 81, 90, 100, 86, 79, 93, 91, 96, 75, 84]# 將 scores 元素從低到高排列
scores.sort()# 倒轉 scores 中的排列順序
scores.reverse()print(scores)
# 輸出:[100, 100, 96, 93, 92, 91, 90, 86, 85, 84, 81, 79, 77, 75]# 用 zip() 將兩個列表合并
zipped = zip(midterm_rank, scores)# 將結果轉換回列表后,賦值給 zipped_rank
zipped_rank = list(zipped)# 來看看結果
print(zipped_rank)
# 輸出:[('妙玉', 100), ('薛寶釵', 100), ('賈元春', 96), ('王熙鳳', 93), ('林黛玉', 92), ('賈巧姐', 91), ('史湘云', 90), ('賈迎春', 86), ('賈寶玉', 85), ('李紈', 84), ('賈探春', 81), ('秦可卿', 79), ('賈惜春', 77), ('賈璉', 75)]

enumerate() 函數:“enumerate”單詞本身意思是“枚舉、數數”。所以對應的函數功能,就是一個一個地將列表中的元素數出來。它返回的是一個枚舉對象,也需要我們用?list()?函數轉換回列表。

# 枚舉原排名表后,再轉回列表的形式
rank_with_id = list(enumerate(midterm_rank))print(rank_with_id)
# 輸出:[(0, '妙玉'), (1, '薛寶釵'), (2, '賈元春'), (3, '王熙鳳'), (4, '林黛玉'), (5, '賈巧姐'), (6, '史湘云'), (7, '賈迎春'), (8, '賈寶玉'), (9, '李紈'), (10, '賈探春'), (11, '秦可卿'), (12, '賈惜春'), (13, '賈璉')]# enumerate()中這次有兩個參數,一個為排名列表,一個為起始數字。
rank_with_ID = list(enumerate(midterm_rank, 1))print(rank_with_ID)
# 輸出:[(1, '妙玉'), (2, '薛寶釵'), (3, '賈元春'), (4, '王熙鳳'), (5, '林黛玉'), (6, '賈巧姐'), (7, '史湘云'), (8, '賈迎春'), (9, '賈寶玉'), (10, '李紈'), (11, '賈探春'), (12, '秦可卿'), (13, '賈惜春'), (14, '賈璉')]

元組:

元組和列表非常相似。不同之處在于,外觀上:列表是被方括號包裹起來的,而元組是被?圓括號?包裹起來的。本質上:列表里的元素可修改,元組里的元素是?不可以“增刪改”?的。

還有一個微妙的地方要注意,就是只有一個元素的元組,在格式上與列表是不同的。僅一個元素 x 的列表寫成?[x], 但僅一個元素的元組要在括號內多寫個逗號:(x,)

對于僅一個元素的元組,我們要特意加個逗號來聲明:這是個元組。

single = (1,)
print(type(single))
# 輸出:<class 'tuple'>

元組不能用于增加、修改或刪除語句。

由于查詢與分片操作并不會改變數據,所以我們說的兩種列表元素的查詢方式以及分片操作,在元組中是可用的。列表運算符,元組也都支持,用?in?查詢元素是否在元組內;用?+?將兩個元組疊加生成新元組;用?*?生成元素重復循環多次的新元組。

如果真的有特殊需求,需要修改元組中的元素:可以先用?list()?函數把元組轉換成列表,相當于給數據“解鎖”,將元素修改完畢后,再用?tuple()?函數轉換回元組,相當于“重新上鎖”。

students = ('林黛玉', '賈寶玉', '薛寶釵')# 用 list() 函數給數據“解鎖”,生成一個相同元素的新列表
students_list = list(students)# 在新列表中修改元素
students_list[0] = '妙玉'# 兩次給數據“上鎖”
students = tuple(students_list)print(students)
# 輸出:('妙玉', '賈寶玉', '薛寶釵')

字符串:

Python 中的字符串是使用一對英文單引號(')或英文雙引號(")包裹的任意文本。無論是用單引號還是用雙引號,它倆的效果都是一樣的,但需要保持前后引號的統一。

使用一對三引號('''?或?""")來包裹多行字符串,三引號包裹的字符串和普通的字符串使用上沒有區別,只是三引號支持多行字符串而已。

字符串拼接:

可以使用+或者*

str1 = '煩死了'
str2 = str1 + str1 + str1
print(str2)
# 輸出:煩死了煩死了煩死了str11 = '煩死了'
str22 = str11 * 3  # 相當于 str11 + str11 + str11
print(str22)
# 輸出:煩死了煩死了煩死了

字符串格式化輸出:

+?來拼接字符串:

def print_intro(name, age, city):intro = '我叫' + name + ',今年 ' + str(age) + ' 歲,來自' + city + '。'print(intro)print_intro('貝殼', 18, '世界各地')
# 輸出:我叫貝殼,今年 18 歲,來自世界各地。

提示:字符串類型和數字類型不能直接相加,需要用?str()?函數進行類型轉換。

用字符串的格式化輸出實現同樣的功能:

def print_intro(name, age, city):intro = '我叫%s,今年 %d 歲,來自%s。' % (name, age, city)print(intro)print_intro('貝殼', 18, '世界各地')
# 輸出:我叫貝殼,今年 18 歲,來自世界各地。

提示:如果不太確定應該用什么占位符,%s?是萬能的,它會把任何數據類型轉換為字符串。

字符串索引:

str = 'Hello World'
print(str[6])  # 輸出:W
print(str[-5])  # 輸出:W

字符串分片:

str = 'Hello World'
# 下面兩個效果一樣
print(str[6:])  # 輸出:World
print(str[-5:])  # 輸出:World
  1. 分片是半閉半開區間,即包含前面索引位置的元素,不包含后面索引位置的元素。比如:string[m:n]?獲取的是字符串 string 中索引為 m 到 n-1 之間的元素(包括 m 和 n-1);
  2. 分片中前后索引的值是可以省略的,前索引省略默認為 0,后索引省略默認為序列長度。

字符串不可變性:

但字符串一旦創建后是不可改變的,這個屬性和元組類似,通過索引來改變字符串中元素就會報錯:

name = '張藝興'
name[0] = '賈'
print(name)
# 報錯:TypeError: 'str' does not support item assignment on line 2

字符串的相關方法:

upper():用于將字符串中的小寫字母轉為大寫字母。

'abcd'.upper()  # 'ABCD'

lower():用于將字符串中的大寫字母轉為小寫字母。

'ABCD'.lower()  # 'abcd'

capitalize():用于將字符串的第一個字母變成大寫,其他字母變小寫。首字符如果是非字母則不變,其他字母變小寫。

'ABCD'.capitalize()  # 'Abcd'
'aBcD'.capitalize()  # 'Abcd'
'1abcd'.capitalize()  # '1abcd'
'1aBcD'.capitalize()  # '1abcd'

title():用于返回“標題化”的字符串——即所有單詞的首字母轉為大寫,其余字母均為小寫。注意:非字母后的第一個字母將轉為大寫字母。

'this is an example string'.title()   # This Is An Example String
'5g is coming'.title()  # 5G Is Coming

swapcase():用于對字符串的大小寫字母進行互相轉換。

'abcd'.swapcase()  # 'ABCD'
'aBcD'.swapcase()  # 'AbCd'

分割、組合與移除方法:

split():

用于通過指定分隔符對字符串進行分割。split()?方法有兩個可選參數,第一個參數為分隔符,默認為所有的空字符,包括空格、換行(\n)、制表符(\t)等。第二個參數為最大分割次數,默認為?-1,即不限次數。

'好 運 連 連'.split()  # ['好', '運', '連', '連']
'好 運 連 連'.split(' ')  # ['好', '運', '連', '連']
'好-運-連-連'.split('-')  # ['好', '運', '連', '連']
'好運連連'.split('運連')  # ['好', '連']
'好 運 連 連'.split(' ', 1)  # ['好', '運 連 連']

join():

用于將序列中的元素以指定的字符連接生成一個新的字符串。join()?方法接收一個序列(列表、元組、字符串等)作為參數,前面的字符串用于連接符。

# 列表
''.join(['好', '運', '連', '連'])  # 好運連連
'-'.join(['好', '運', '連', '連'])  # 好-運-連-連# 元組
'-'.join(('好', '運', '連', '連'))  # 好-運-連-連# 字符串
'-'.join('好運連連')  # 好-運-連-連

strip():

用于移除字符串開頭和結尾指定的字符(默認為空字符)或字符序列。當傳入一個字符串時,會將傳入字符串中每個字符依次移除。

'好運連連 '.strip() #'好運連連'
'~~好運連連~~'.strip('~') #'好運連連'
'~~好運~~連連~~'.strip('~') #'好運~~連連'
'_~_好運連連_~~'.strip('~_') #'好運連連'

定位與替換方法:

count():

用于統計字符串中某個字符串出現的次數。第一個參數為要統計次數的字符串,后兩個可選參數為在字符串搜索的開始與結束索引。

'aabbcccd'.count('a')  # 2
'aabbcccd'.count('ab')  # 1
'aabbcccd'.count('e')  # 0'aabbcccd'.count('a', 2, 6)  # 0
# 等同于 'bbcc'.count('a')'aabbcccd'.count('c', 2, 6)  # 2
# 等同于 'bbcc'.count('c')

find():

用于檢測字符串中是否包含子字符串,如果包含子字符串返回第一次出現的索引值,否則返回 -1。第一個參數為要查找的子字符串,后兩個可選參數為在字符串搜索的開始與結束索引。

'abc'.find('b')  # 1
'abcabc'.find('b')  # 1
'abcabc'.find('d')  # -1
'abcbcdabc'.find('bcd')  # 3
'abcabc'.find('b', 1, 2)  # 1
'abcabc'.find('b', 2, 3)  # -1

replace():

用于將字符串中的指定字符串替換成別的字符串。第一個參數為被替換字符串,第二個參數為替換字符串,第三個可選參數為替換的最多次數,默認為無限次。

'abcd'.replace('b', 'e')  # 'aecd'
'abbbcbd'.replace('b', 'e')  # 'aeeeced'
'abbbcbd'.replace('bb', 'e')  # 'aebcbd'
'abbbcbd'.replace('b', 'e', 2)  # 'aeebcbd'

格式化輸出方法:

可以使用字符串的?format()?方法:

'我叫{},今年 {} 歲,來自{}'.format('貝殼', 18, '世界各地')
# 我叫貝殼,今年 18 歲,來自世界各地

集合:

集合(set)是一個無序的不重復元素序列。

集合中的元素不會重復,并且可以進行交集、并集、差集等常見的集合操作。

可以使用大括號?{ }?創建集合,元素之間用逗號?,?分隔, 或者也可以使用?set()?函數創建集合。

set1 = {1, 2, 3, 4}            # 直接使用大括號創建集合
set2 = set()      # 使用 set() 函數創建集合

創建一個空集合必須用?set()?而不是?{ },因為?{ }?是用來創建一個空字典。

添加元素:

s.add( x ):將元素 x 添加到集合 s 中,如果元素已存在,則不進行任何操作。
s.update( x ):x 可以有多個,用逗號分開。
set1={1,2,3,4}
set1.add(5)
print(set1) #{1, 2, 3, 4, 5}
set1.update({6,7}) 
print(set1) #{1, 2, 3, 4, 5, 6, 7}

移除元素:

s.remove( x ):將元素 x 從集合 s 中移除,如果元素不存在,則會發生錯誤。
s.discard( x ):也是移除集合中的元素,且如果元素不存在,不會發生錯誤。
s.pop() :隨機刪除集合中的一個元素
set1={1,2,3,4}
set1.remove(3)
print(set1) #{1, 2, 4}
set1.discard(4)
print(set1) #{1, 2}
set1.pop()
print(set1) #{2}

計算集合元素個數:

len(s):計算集合 s 元素個數。
set1={1,2,3,4}
print(len(set1)) #4

清空集合:

s.clear():清空集合 s。
set1={1,2,3,4}
print(set1.clear()) #None

字典:

字典?是由一對大括號({})包裹著的。和列表不同的是,字典的每個元素是?鍵值對

字典中的??需要是?唯一的,如果字典中有兩個相同的?,Python 只會保留后面那個。而??則沒有限制,可以是任意類型的,也可以有相同的值。

scores = {'林黛玉': 95,'薛寶釵': 93,'賈寶玉': 78,'林黛玉': 78
}
print(scores)
# 輸出:{'林黛玉': 78, '薛寶釵': 93, '賈寶玉': 78}

字典的取值:

和列表類似,訪問字典中的元素也使用方括號?[]。不同的是,列表中括號內的是?索引,字典中括號內的是?鍵。

scores = {'林黛玉': 95,'薛寶釵': 93,'賈寶玉': 78
}
print(scores['林黛玉'])
# 輸出:95

字典元素的修改/添加/刪除:

修改和添加都使用?字典名[鍵] = 值?的方式,如果??存在于字典中,就是修改,不存在就是添加。字典元素的刪除和列表元素的刪除一樣也是使用?del?關鍵字進行刪除。

scores = {'林黛玉': 95,'薛寶釵': 93,'賈寶玉': 78
}# 修改
scores['林黛玉'] = 90
print(scores)
# 輸出:{'林黛玉': 90, '薛寶釵': 93, '賈寶玉': 78}# 添加
scores['襲人'] = 85
print(scores)
# 輸出:{'林黛玉': 90, '薛寶釵': 93, '賈寶玉': 78, '襲人': 85}# 刪除
del scores['林黛玉']
print(scores)
# 輸出:{'薛寶釵': 93, '賈寶玉': 78, '襲人': 85}

字典常用方法:

get():

將字典的鍵作為參數傳入?get()?方法中,它就會幫我們查詢字典中有沒有這個鍵。如果存在的話,返回鍵對應的值;不存在的話,默認返回?None

students = {'林黛玉': 95,'薛寶釵': 93,'賈寶玉': 78,'襲人': 85
}
print(students.get('林黛玉'))
# 輸出:95
print(students.get('張藝興'))
# 輸出:None

keys():

keys()?方法則可以獲取字典中所有的?鍵。

students = {'林黛玉': 95,'薛寶釵': 93,'賈寶玉': 78,'襲人': 85
}
names = students.keys()
print(names)
# 輸出:dict_keys(['林黛玉', '薛寶釵', '賈寶玉', '襲人'])
print(type(names))
# 輸出:<class 'dict_keys'>

values():

與?keys()?方法相對應,我們可以通過?values()?方法獲取字典中所有的?

students = {'林黛玉': 95,'薛寶釵': 93,'賈寶玉': 78,'襲人': 85
}
scores = students.values()
print(scores)
# 輸出:dict_values([95, 93, 78, 85])
print(type(scores))
# 輸出:<class 'dict_values'>
for score in scores:print(score)
# 輸出:95 93 78 85

items():

除了獲取所有的鍵、值,我們也可以通過?items()?方法,一次性獲取字典中所有的?鍵值對?,其中每個鍵值對都是一個形如?(鍵, 值)?的元組。items()?方法返回的也是一個特殊類型,不可索引,可遍歷。

students = {'林黛玉': 95,'薛寶釵': 93,'賈寶玉': 78,'襲人': 85
}
student = students.items()
print(student)
# 輸出:dict_items([('林黛玉', 95), ('薛寶釵', 93), ('賈寶玉', 78), ('襲人', 85)])
print(type(items))
# 輸出:<class 'dict_items'># 以 name, score 遍歷 students 中鍵值對
for name, score in students.items():print('{}的分數是:{}'.format(name, score))# 輸出:
# 林黛玉的分數是:95
# 薛寶釵的分數是:93
# 賈寶玉的分數是:78
# 襲人的分數是:85

字典的嵌套:

列表中嵌套字典:

scores = [{'林黛玉': 95, '賈寶玉': 78},{'薛寶釵': 93, '襲人': 85}
]print(scores[0])
# 輸出:{'林黛玉': 95, '賈寶玉': 78}print(scores[0]['林黛玉'])
# 輸出:95

字典中嵌套列表:

students = {'第一': ['林黛玉', '賈寶玉'],'第二': ['薛寶釵', '襲人']
}print(students['第一'])
# 輸出:['林黛玉', '賈寶玉']
print(students['第一'][0])
# 輸出:林黛玉

字典中嵌套字典:

dictionary = {'apple': {'釋義': '蘋果', '詞性': '名詞'},'grape': {'釋義': '葡萄', '詞性': '名詞'}
}print(dictionary['apple'])
# 輸出:{'釋義': '蘋果', '詞性': '名詞'}
print(dictionary['apple']['釋義'])
# 輸出:蘋果

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/719232.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/719232.shtml
英文地址,請注明出處:http://en.pswp.cn/news/719232.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

匯編語言程序設計實驗三 數據串傳送和查表程序

實驗目的和要求 1、堆棧。堆棧指示器SP和堆棧操作指令PUSH。POP。 2、段寄存器和物理地址計算。 3、查表法和查表指令XLAT。 4、數據串傳送程序和數據串傳送指令MOVS。STOS及重復前輟REP。 5、循環指令ROL。邏輯與指令AND和清方向位指令CLD。 6、偽操作指令DB。 實驗環境…

五步法搞定 BI 業務需求梳理

五步法搞定 BI 業務需求梳理。高手就是把復雜的事情簡單化&#xff0c;簡單的東西重復做、認真做。 01 五步法是哪五步 第一、明確用戶 五步法搞定 BI 業務需求梳理。高手就是把復雜的事情簡單化&#xff0c;簡單的東西重復做、認真做。 第二、明確指標 在明確需求用戶的前…

LeetCode 2125.銀行中的激光束數量

銀行內部的防盜安全裝置已經激活。給你一個下標從 0 開始的二進制字符串數組 bank &#xff0c;表示銀行的平面圖&#xff0c;這是一個大小為 m x n 的二維矩陣。 bank[i] 表示第 i 行的設備分布&#xff0c;由若干 ‘0’ 和若干 ‘1’ 組成。‘0’ 表示單元格是空的&#xff0…

NERF論文筆記

NeRF:Representing Scene as Neural Radiance Fields for View Synthesis 筆記 摘要 實現了一個任意視角視圖生成算法&#xff1a;輸入稀疏的場景圖像&#xff0c;通過優化連續的Volumetric場景函數實現&#xff1b;用全連接深度網絡表達場景&#xff0c;輸入是一個連續的5維…

Unity(第二十部)效果 粒子、線條和拖尾

1、粒子系統 粒子系統介紹 Unity 粒子系統是 Unity 引擎中用于創建和控制粒子效果的工具。它可以模擬各種自然現象&#xff0c;如火焰、煙霧、雨滴等&#xff0c;也可以用于創建特效&#xff0c;如魔法光芒、爆炸效果等。 粒子系統組成 在 Unity 中&#xff0c;粒子系統由發射…

用 Dockerfile為鏡像添加SSH服務

1、基礎鏡像ubuntu:18.04 2、替換為國內的安裝源 3、安裝openssh-server 4、允許root用戶遠程登陸 5、暴露端口22 6、服務開機自啟動 1.創建目錄 [rootopenEuler-node1 db]# mkdir sshd_ubuntu 2.創建 Dockerfile、 run.sh 、authorized_keys、vim aliyun.list 文件 [rootop…

網盤拉新如何對接?盤點最靠譜的一手渠道平臺

2024網盤行業再次重燃戰火。字節旗下產品頭條搜索極速版APP、悟空瀏覽器APP推出對應的網盤功能&#xff0c;剛剛開放了拉新推廣&#xff0c;現在是一個不能錯過新項目的好時機。 如果你對網盤拉新推廣充滿熱情&#xff0c;千萬不要錯過星子助推聯合字節推出的網盤項目機會。小…

python自動化之如何利用allure生成測試報告

Allure測試報告框架幫助你輕松實現”高大上”報告展示。本文通過示例演示如何從0到1集成Allure測試框架。重點展示了如何將Allure集成到已有的自動化測試工程中、以及如何實現報表的優化展示。Allure非常強大&#xff0c;支持多種語言多種測試框架&#xff0c;無論是Java/Pytho…

成功的交易沒有對錯,只有邏輯

大部分人將交易失敗歸咎于心態&#xff0c;但其實我們是否認真思考過自己的基本功是否扎實呢&#xff1f;這篇文章將引導你換個角度看待交易&#xff0c;讓你明白自己應該努力的方向。 曾經&#xff0c;你或許認為資金體量小、信息不對稱、技術不過關、心態不過硬是阻礙交易發展…

TikTok外貿系統的核心功能及其源代碼分享!

隨著全球化的不斷推進&#xff0c;外貿業務成為越來越多企業的增長動力&#xff0c;TikTok作為一個全球性的社交媒體平臺&#xff0c;其用戶基數龐大、活躍度高&#xff0c;為外貿業務提供了無限的商機。 為了幫助企業在TikTok上更好地開展外貿業務&#xff0c;TikTok外貿系統…

【DDD】學習筆記-聚合和聚合根:怎樣設計聚合?

今天我們來學習聚合&#xff08;Aggregate&#xff09;和聚合根&#xff08;AggregateRoot&#xff09;。 我們先回顧下上一講&#xff0c;在事件風暴中&#xff0c;我們會根據一些業務操作和行為找出實體&#xff08;Entity&#xff09;或值對象&#xff08;ValueObject&…

47、WEB攻防——通用漏洞Java反序列化EXP生成數據提取組件安全

文章目錄 序列化和反序列化的概念&#xff1a; 序列化&#xff1a;把java對象轉換成字節流的過程&#xff1b;反序列化&#xff1a;把字節流恢復為java對象的過程。 對象的序列化主要有兩種用途&#xff1a; 把對象的字節流永久的保存在硬盤上&#xff0c;通常存放在一個文件…

網絡分析工具簡介及匯總

文章目錄 一、網絡分析工具軟件是什么二、網絡分析工具軟件作用三、常見的網絡分析工具 一、網絡分析工具軟件是什么 網絡分析工具軟件是一種用于捕獲、分析和解釋網絡數據包的工具。它們可以直接從網絡接口上捕獲數據包&#xff0c;并提供詳細的信息和統計數據&#xff0c;以幫…

xss.haozi.me:0x0B

<svg><script>(1)</script>

洛谷 B3620 x 進制轉 10 進制

題目描述 給一個小整數 x 和一個 x 進制的數 S。將 S 轉為 10 進制數。對于超過十進制的數碼&#xff0c;用 A&#xff0c;B&#xff0c;…… 表示。 輸入格式 第一行一個整數 x; 第二行一個字符串 S。 輸出格式 輸出僅包含一個整數&#xff0c;表示答案。 輸入輸出樣例…

【JavaScript】面試手撕淺拷貝

【JavaScript】面試手撕淺拷貝 引入 淺拷貝和深拷貝應該是面試時非常常見的問題了&#xff0c;為了能將這兩者說清楚&#xff0c;于是打算用兩篇文章分別解釋下深淺拷貝。 PS: 我第一次聽到拷貝這個詞&#xff0c;有種莫名的熟悉感&#xff0c;感覺跟某個英文很相似&#xff…

Linux文本處理三劍客:awk(內置函數詳解筆記)

Linux系統中&#xff0c;AWK 是一個非常強大的文本處理工具&#xff0c;它的內置函數使得對文本數據進行處理更加高效和便捷。 本文將介紹 AWK 內置函數的幾種主要類型&#xff1a; 算數函數字符串函數時間函數位操作函數其他常用函數 我們將使用一個示例文本文件來演示這些函…

局域網如何搭建服務器?

隨著網絡的普及和應用場景的不斷拓展&#xff0c;局域網搭建服務器逐漸成為大家關注的話題。在日常生活和工作中&#xff0c;我們經常需要通過局域網和互聯網進行文件共享、資源訪問等操作&#xff0c;而搭建服務器則是實現這些功能的重要手段之一。本文將針對局域網搭建服務器…

SwiftUI 如何在運行時從底層動態獲取任何 NSObject 對象實例

概覽 眾所周知,SwiftUI 的推出極大地方便了我們這些禿頭碼農們搭建 App 界面。不過,有時我們仍然需要和底層的 UIKit 對象打交道。比如:用 SwiftUI 未暴露出對象的接口改變視圖的行為或外觀。 從上圖可以看到,我們 SwiftUI 代碼并沒有設置視圖的背景色,那么它是怎么變成綠…

vscode 本地/遠程添加python解釋器

文章目錄 1. 背景2. 增加python解釋器 1. 背景 我們在使用 vscode 去遠程調試代碼時&#xff0c;如果環境存在多個 Python 版本&#xff08;如用 conda 管理&#xff09;&#xff0c;沒有選擇正確的 Python 解釋器會導致少包、庫不適配等各種問題 2. 增加python解釋器 windo…