python list去掉引号_最新的python面试题集170之三(基础性学习)
10.了解Python3的類型注解么?
答:在 Python 3.5 中,Python PEP 484 引入了類型注解(type hints)。
類型注解(type hints)的好處是:
1).讓別的程序員看得更明白。
2).讓 IDE 了解類型,從而提供更準確的代碼提示、補全和語法檢查(包括類型檢查,可以看到 str 和 float 類型的參數被高
亮提示)
3).這種類型注解實際上只是一種類型提示,對運行實際上是沒有影響的,
比如調用 add 方法的時候,我們傳入的不是 int 類型,而是一個 float 類型,它也不會報錯,也不會對參數進行類型轉換。
4).如:
def add(x:int, y:int) -> int: return x + yprint(add.__annotations__)#在add.__annotations__,在函數的 __annotations__ 屬性中會有你設定的注解。
圖1
11.例舉你知道 Python 對象的命名規范,例如方法或者類等。
答:
(1)類:總是使用首字母大寫單詞串,如 MyClass。內部類可以使用額外的前導下劃線。
(2)變量:小寫,由下劃線連接各個單詞。方法名類似.
(3)常量:常量名所有字母大寫等。
12.Python 中的注釋有幾種?
答:總體來說分為兩種,單行注釋和多行注釋。
(1)單行注釋在行首是 #。
(2)多行注釋可以使用三個單引號或三個雙引號,包括要注釋的內容。
圖2
13.如何優雅的給一個函數加注釋?
答:可以使用 docstring 配合類型注解。
函數注釋通常在 def 語句下方,第一行表示函數用法,接下來對函數接受的參數進行解釋,
最后對函數的返回值進行注釋,方便他人理解函數的用法。
14.如何給變量加注釋?
答:可以通過變量名:類型的方式如下
a: str = "this is string type"
15.Python 代碼縮進中是否支持 Tab 鍵和空格混用。
答:不允許tab鍵和空格鍵混用,這種現象在使用 sublime 的時候尤為明顯。一般推薦使用 4 個空格替代 tab 鍵。
16.是否可以在一句 import 中導入多個庫?
答:可以是可以,但是不推薦。因為一次導入多個模塊可讀性不是很好,所以一行導入一個模塊會比較好。
同樣的盡量少用 from modulename import *,因為判斷某個函數或者屬性的來源有些困難,不方便調試,可讀性也降低了。
17.在給 Py 文件命名的時候需要注意什么?
答:給文件命名的時候不要和標準庫庫的一些模塊重復,比如 abc。 另外要名字要有意義,不建議數字開頭或者中文命名。
使用全小寫或者下劃線進行命名。
18.例舉幾個規范 Python 代碼風格的工具
答:pylint 和 flake8、YAPF,谷歌開發的代碼規范工具。
Black,依賴Python3.6+的第三方庫,可以直接將原代碼變為符合PEP8標準的代碼。
數據類型
字符串
19.列舉 Python3 中的基本數據類型?
答:六個標準數據類型中:
不可變數據(3 個):Number(數字)、String(字符串)、Tuple(元組);
可變數據(3 個):List(列表)、Dictionary(字典)、Set(集合)。
我們所說的"類型"是變量所指的內存中對象的類型。
等號(=)用來給變量賦值。
等號(=)運算符左邊是一個變量名,等號(=)運算符右邊是存儲在變量中的值。例如:
counter = 100 # 整型變量miles = 1000.0 # 浮點型變量name = "runoob" # 字符串print (counter)print (miles)print (name)20.如何區別可變數據類型和不可變數據類型
答:以下所有的內容都是基于內存地址來說的。
不可變數據類型:當該數據類型的對應變量的值發生了改變,那么它對應的內存地址也會發生改變,
對于這種數據類型,就稱不可變數據類型。
可變數據類型:當該數據類型的對應變量的值發生了改變,那么它對應的內存地址不發生改變,
對于這種數據類型,就稱可變數據類型。
總結:不可變數據類型更改后地址發生改變,可變數據類型更改地址不發生改變。
-----------------------------
在python中數據類型有:整型,字符串,元組,集合,列表,字典。
不可變數據(3 個):Number(數字)、String(字符串)、Tuple(元組);
可變數據(3 個):List(列表)、Dictionary(字典)、Set(集合)。
----------------------------
21.將"hello world"轉換為首字母大寫"Hello World"
打開終端,進入python3.8
輸入:
arr = "hello world".split(" ")new_str = f"{arr[0].capitalize()} {arr[1].capitalize()}"print(new_str)即
Hello World
22.如何檢測字符串中只含有數字?
答:Python的語法,字符串類型自帶函數isdigit(),當字符串中只存在數字返回True,反之返回False。
可以綜合使用any和isdigit方法:
def hasNumbers(inputString):
... return any(char.isdigit() for char in inputString) #return與has對齊,但在def之后
... #要回車下去
>>> hasNumbers("I own 1 dog")
True
>>> hasNumbers("I own no dog")
False
可以使用正則表達式:
>>> import re
>>> def hasNumbers(inputString):
... return bool(re.search(r'd', inputString)) #return與has對齊,但在def之后
... #要回車下去
>>> hasNumbers("I own 1 dog")
True
>>> hasNumbers("I own no dog")
False
圖3
23.將字符串"ilovechina"進行反轉
答:
s1 = "ilovechina"[::-1]
print(s1)
結果:
anihcevoli
24.Python 中的字符串格式化方式你知道哪些?
答:format()是最先進的。
三種字符串格式化方法
1).最方便的
print ('hello %s and %s' % ('df', 'another df'))
結果:
hello df and another df
2).最好用的
print('hello %(first)s and %(second)s' % {'first':'df', 'second':'another df'})
結果:
hello df and another df
3).最先進的
print ('hello {first} and {second}'.format(first='df', second='another df'))
結果:
hello df and another df
圖4
25.有一個字符串開頭和末尾都有空格,比如“ adabdw ”,要求寫一個函數把這個字符串的前后空格都去掉。
答:
方法一:
def strip(string): start, end = 0, -1 length = len(string) for i in range(length): if string[i] != ' ': start = i break for j in range(-1, -length, -1): if string[j] != ' ': end = length + j + 1 break return string[start:end]s = ' adabdw 'print(s)方法二:
def strip_function(s1): return s1.strip()s1 = " adabdw "print(strip_function(s1))26.獲取字符串”123456“最后的兩個字符。
答:“123456”[4:6:]或“123456"[-2::]
即:
a = "123456"
print(a[4:6:])
或者
print(a[-2::])
27.一個編碼為 GBK 的字符串 S,要將其轉成 UTF-8 編碼的字符串,應如何操作?
答:
a= "S".encode("gbk").decode("utf-8",'ignore')print(a)28.
(1)s="info:xiaoZhang 33 shandong",用正則切分字符串輸出['info', 'xiaoZhang', '33', 'shandong']
我們需要根據冒號或者空格切分
import res = "info:xiaoZhang 33 shandong"res = re.split(r":| ", s)print(res)(2) a = "你好 中國 ",去除多余空格只留一個空格。
答:
s = "你好 中國 "print(" ".join(s.split()))29. (1)怎樣將字符串轉換為小寫
答:
(1) 使用字符串的 lower() 方法。
(2)單獨使用單引號和雙引號沒什么區別,但是如果引號里面還需要使用引號的時候,
就需要這兩個配合使用了,然后說三引號,同樣的三引號也分為三單引號和三雙引號,
兩個都可以聲名長的字符串時候使用,如果使用 docstring 就需要使用三雙引號。
總結
以上是生活随笔為你收集整理的python list去掉引号_最新的python面试题集170之三(基础性学习)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: network setup servic
- 下一篇: fastdfs 测试客户端_Nginx+