python資料型別

73、發表於2020-12-27

1、Python 中的可變和不可變資料型別是什麼?

  • 可變:list、dict、set
  • 不可變:string、tuple、number

2、is 和 == 有什麼區別?

  • is判斷兩者值和記憶體地址是否全相同
  • ==判斷兩種值是否相同

3、Python 中的單詞大小寫轉換和字母統計?

  • upper():小寫轉大寫
  • lower():大寫轉小寫
  • title():字串中每個獨立的單詞的首字母大寫
  • capitalize():字串中的第一個單詞的首字母大寫
  • swapcase():大小寫互換
  • count(s):統計字串中s出現的次數

4、字串,列表,元組如何反轉?反轉函式 reverse 和 reversed 的區別?

  1. 切片
  2. reverse():列表獨有,無返回值,直接修改列表
  3. reversed():python內建函式,需一個可迭代物件做為引數,返回一個迭代器物件

5、Python 中的字串格式化的方法有哪些?f-string 格式化知道嗎?

# 1. %s
	name = "seth"
	print("%s is coming" % name)
# 2. format()
	name,age = 'seth',18
	print("{_name} is {_age} years old".format(_name=name, _age=age))
# 3. f-string
	name = 'seth'
	print(f"hello {name}")

6、含有多種符號的字串分割方法?

# 可以使用正規表示式
import re
str="zhong)78^dsds%fd(gf67%ds"
s=re.split("\W", str)
print(s)

7、巢狀列表轉換為列表,字串轉換為列表的方法

# 巢狀列表轉換為列表
from collections.abc import Iterable
l=[1,2,3,[4,5,[6,7,8],9],10]
l_new=[]
while 1:
	flag=1
	for i in l:
		if isinstance(i, Iterable):
			flag=0
			for j in i:
				l_new.append(j)
		else:
			l_new.append(i)
	l=l_new
	if flag:
		break

# 字串轉換為列表
str='qwer'
str=list(str)

8、列表合併的常用方法?

1、extend()
2+

9、列表如何去除重複的元素,還是保持之前的排序?

# 1、列表先轉成集合,再轉回成列表
l=[1,2,3,4,5,6,1,2,3,5]
l=list(set(l))

# 2、迴圈去重
l=[1,2,3,4,5,6,1,2,3,5]
l_new=[]
for i in l:
	if i in l_new:
		pass
	else:
		l_new.append(i)

10、列表資料如何篩選,篩選出符合要求的資料?

l=[1,2,3,4,5,6,7,12,-5,32,3,3,-7]
#1、列表生成式
l = [x for x in l if x<9]
#2、匿名函式lambda+filter()函式
l = list(filter(lambda x:x<9, l))

11、字典中元素的如何排序?sorted 排序函式的使用詳解?

sorted(iterable,key=None,reverse=False)
iterable:可迭代物件
key:根據什麼來排序
reverse:是否反轉,即正序還是倒序

12、字典如何合併?字典解包是什麼?

# 字典如何合併
update()


13、字典推導式使用方法?字典推導式如何格式化 cookie 值?

# 字典推導式使用方法?
和列表生成式差不多,唯一的區別就是列表使用"[]",字典用"{}"
以cookie為例,
cookie的基本格式是由一堆key=value組成,中間用"; "來分隔
cookie='PHPSESSID=et4a33og7nbftv60j3v9m86cro; Hm_lvt_51e3cc975b346e7705d8c255164036b3=1561553685; Hm_lpvt_51e3cc975b346e7705d8c255164036b3=1561553685'
d={x.split('=')[0]:x.split('=')[1] for x in cookie.split('; ')}

14、zip 打包函式的使用?元組或者列表中元素生成字典?

zip([Iterable,...])
接收多個可迭代物件做引數,將可迭代物件對應位置的元素打包成元組,返回由這些元組構成的列表;如果可迭代物件長度不一,以最短的為基準

l=[1,2,3,4,5]
for k,v in enumerate(l):
	d[k]=v

15、字典的鍵可以是哪些型別的資料?

不可變的資料型別

16、變數的作用域是怎麼決定的?

程式碼塊來決定

相關文章