重慶分公司,新征程啟航
為企業提供網站建設、域名注冊、服務器等服務
為企業提供網站建設、域名注冊、服務器等服務
哥們看了下,感覺是不是這個問題造成的
成都創新互聯公司自2013年創立以來,先為墊江等服務建站,墊江等地企業,進行企業商務咨詢服務。為墊江企業網站制作PC+手機+微官網三網同步一站式服務解決您的所有建站問題。
你的函數定義造成:def move(n,a,c,b)
我使用函數:def move(n,a,b,c)輸出結果如下:
python的常用內置函數
1.abs() 函數返回數字的絕對值
abs(-40)=40
2. dict() 函數用于創建一個字典
dict()
{} ? ? ?#創建一個空字典類似于u={},字典的存取方式一般為key-value
例如u = {"username":"tom", ?"age":18}
3. help() 函數用于查看函數或模塊用途的詳細說明
help('math')查看math模塊的用處
a=[1,2,3,4]
help(a)查看列表list幫助信息
4.dir()獲得當前模塊的屬性列表
dir(help)
['__call__', '__class__', '__delattr__', '__dict__', '__dir__', '__doc__', '__eq__', '__format__', '__ge__', '__getattribute__', '__gt__', '__hash__', '__init__', '__le__', '__lt__', '__module__', '__ne__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__setattr__', '__sizeof__', '__str__', '__subclasshook__', '__weakref__']
5.min() 方法返回給定參數的最小值 /參數可以為序列
a=? min(10,20,30,40)
a
10
6. next() 返回迭代器的下一個項目
it = iter([1, 2, 3, 4, 5])
next(it)
1
next(it)
2
7. id() 函數用于獲取對象的內存地址
a=12
id(a)
1550569552
8.enumerate() 函數用于將一個可遍歷的數據對象(如列表、元組或字符串)組合為一個索引序列,同時列出數據和數據下標,一般用在 for 循環當中。
a=["tom","marry","leblan"]
list(enumerate(a))
[(0, 'tom'), (1, 'marry'), (2, 'leblan')]
9. oct() 函數將一個整數轉換成8進制字符串
oct(15)
'0o17'
oct(10)
'0o12'
10. bin() 返回一個整數 int 或者長整數 long int 的二進制表示
bin(10)
'0b1010'
bin(15)
'0b1111'
11.eval() 函數用來執行一個字符串表達式,并返回表達式的值
eval('2+2')
4
12.int() 函數用于將一個字符串會數字轉換為整型
int(3)
3
int(3.6)
3
int(3.9)
3
int(4.0)
4
13.open() 函數用于打開一個文件,創建一個file對象,相關的方法才可以調用它進行讀寫
f=open('test.txt')
14.str() 函數將對象轉化為適于人閱讀的形式
str(3)
'3'
15. bool() 函數用于將給定參數轉換為布爾類型,如果沒有參數,返回 False
bool()
False
bool(1)
True
bool(10)
True
bool(10.0)
True
16.isinstance() 函數來判斷一個對象是否是一個已知的類型
a=5
isinstance(a,int)
True
isinstance(a,str)
False
17. sum() 方法對系列進行求和計算
sum([1,2,3],5)
11
sum([1,2,3])
6
18. super() 函數用于調用下一個父類(超類)并返回該父類實例的方法。super 是用來解決多重繼承問題的,直接用類名調用父類方法
class ? User(object):
? def__init__(self):
class Persons(User):
? ? ? ? super(Persons,self).__init__()
19. float() 函數用于將整數和字符串轉換成浮點數
float(1)
1.0
float(10)
10.0
20. iter() 函數用來生成迭代器
a=[1,2,3,4,5,6]
iter(a)
for i in iter(a):
... ? ? ? ? print(i)
...
1
2
3
4
5
6
21.tuple 函數將列表轉換為元組
a=[1,2,3,4,5,6]
tuple(a)
(1, 2, 3, 4, 5, 6)
22.len() 方法返回對象(字符、列表、元組等)長度或項目個數
s = "playbasketball"
len(s)
14
a=[1,2,3,4,5,6]
len(a)
6
23. property() 函數的作用是在新式類中返回屬性值
class User(object):
?def __init__(self,name):
? ? ? ? ? self.name = name
def get_name(self):
? ? ? ? ? return self.get_name
@property
?def name(self):
? ? ? ? ?return self_name
24.type() 函數返回對象的類型
25.list() 方法用于將元組轉換為列表
b=(1,2,3,4,5,6)
list(b)
[1, 2, 3, 4, 5, 6]
26.range() 函數可創建一個整數列表,一般用在 for 循環中
range(10)
range(0, 10)
range(10,20)
range(10, 20)
27. getattr() 函數用于返回一個對象屬性值
class w(object):
... ? ? ? ? ? ? s=5
...
a = w()
getattr(a,'s')
5
28. complex() 函數用于創建一個復數或者轉化一個字符串或數為復數。如果第一個參數為字符串,則不需要指定第二個參數
complex(1,2)
(1+2j)
complex(1)
(1+0j)
complex("1")
(1+0j)
29.max() 方法返回給定參數的最大值,參數可以為序列
b=(1,2,3,4,5,6)
max(b)
6
30. round() 方法返回浮點數x的四舍五入值
round(10.56)
11
round(10.45)
10
round(10.45,1)
10.4
round(10.56,1)
10.6
round(10.565,2)
10.56
31. delattr 函數用于刪除屬性
class Num(object):
...? ? a=1
...? ? b=2
...? ? c=3.
.. print1 = Num()
print('a=',print1.a)
a= 1
print('b=',print1.b)
b= 2
print('c=',print1.c)
c= 3
delattr(Num,'b')
print('b=',print1.b)
Traceback (most recent call last):? File "", line 1, inAttributeError: 'Num' object has no attribute 'b'
32. hash() 用于獲取取一個對象(字符串或者數值等)的哈希值
hash(2)
2
hash("tom")
-1675102375494872622
33. set() 函數創建一個無序不重復元素集,可進行關系測試,刪除重復數據,還可以計算交集、差集、并集等。
a= set("tom")
b = set("marrt")
a,b
({'t', 'm', 'o'}, {'m', 't', 'a', 'r'})
ab#交集
{'t', 'm'}
a|b#并集
{'t', 'm', 'r', 'o', 'a'}
a-b#差集
{'o'}
1.【選擇】?下面哪個選項不是定義列表的正確方式?(?D)
D.myList4?=?2,3,4,5
答案解析:這是定義元組的方式,而不是列表
2.【選擇】根據下面表達式,a的值是:(?C)
C.lo?Wo
3.【填空】請寫出如何切片myList[]的倒數第3~5位。
myList[-3:-5]
4.【判斷】列表內元素的下標是從0開始的。(?√)
5.【選擇】下列Python表達式可以將列表反向并改變原列表值的是:(?D)
D.myList.reverse()
答案解析:切片會生成新的列表;reversed只是生成新的迭代器;只有?list.reverse()會對原表的值進行改變
-----------
1.【判斷】Python語句“x?=?"a","b","c"”中,x是一個元組。(√?)
2.【選擇】執行下列Python語句會報錯的是:(?A)
A.myTuple[3]?=?30
答案解析:元組是immutable(不可變)的,所以不能改變元組的值
3.【填空】使用Python內置函數,計算元組myTuple的語句是:
sum(myTuple)?
4.【選擇】下列關于Python的描述錯誤的是:(?C)
C.對元組內部元素進行排序使用的是sort()
答案解析:元組不可變,所以不能對元素進行排序
------------
1.【選擇】下列關于Python中字符串說法錯誤的是:(?D)
D.Python中字符類型是char,字符串的類型是str
答案解析:python字符和字符串類型都是str
3.【填空】請寫出用空格“?”合并字符串“Jane”、“Doe”的Python語句:
"Jane"?+?"?"?+?"Doe"
4.【選擇】下列不是Python3中解決路徑中特殊字符問題的選項是:(?C)
C.s?=?u"D:\test"
------------
1.【選擇】下列不是序列的是:(C?)
C.集合
3.【選擇】下面哪些操作是序列都具有的?(?D)
D.以上都是
-----
1.【判斷】Python中符號{}僅用在集合這一數據類型中。(B.×?)
3.【填空】語句set("datascience")的結果是:
集合?{'d',?'a',?'t',?'s',?'c',?'i',?'e',?'n'}
4.【選擇】下列關于集合的說法錯誤的是:(A?)
A.集合具有互異性,定義集合時不允許出現相同的元素
答案解析:出現了重復也沒事,會自動去重的。
7.【選擇】在Python中對數據進行去重處理,一般會借助下列哪種數據類型?(?C)
C.集合
---------
1.【填空】有兩個列表?a?=?["name","age","sex"],b?=?["jonh","23","M"],請用一個語句將這兩個列表轉換成字典,其中列表a中的元素為“鍵”,列表b中的元素為“值”。
dict(zip(a,?b))
2.【填空】定義一個新字典如下,用print輸出dict1的結果是:
{1:?3,?2:?'a'}
4.【判斷】下面對字典d的定義是正確的。(B.×?)
答案解析:列表不能用做鍵。應該用元組('a','b')做鍵?。
True的選項是A
True的選項是A
輸出是16 range(2,10)2,3,4,5,6,7,8,9 循環了3次,X分別為2,3,4
輸出的結果是(-2,3,5)
people?=?[{'name':?'Mary',?'height':?160},{'name':?'Isla',?'height':?80},
{'name':?'Sam'}]
height=0
n=0
for?i?in?range(len(people)):
if?isinstance((people[i].get('height')),int):
n=n+1
height=people[i].get('height')+?height??????
else:
print('人員的平均身高為%s'%?(height/n))
這是python3的函數注釋,暗示傳入參數的數據類型,提高可讀性。
text: str 函數參數注釋,參數text建議傳入字符串(str)數據類型
- str - 是返回值注釋的標記,建議函數返回值數據類型為字符串(str)
: 最后的冒號是聲明函數必帶的標記,不用解釋吧
整體含義:聲明一個叫correct_sentence的函數,函數參數名text,建議傳入的參數數據類型為字符串,建議函數返回值數據類型為字符串
==================================
將列表傳遞給函數后,函數就能直接訪問其內容
假設有一個用戶列表,要問候其中的每位用戶
將列表傳遞給函數后,函數就可對其進行修改,在函數中對這個列表所做的任何修改都是永久性的
一家為用戶提交的設計制作3D打印模型的公司,需要打印的設計存儲在一個列表中,打印后轉移到另一個列表中。
有時候需要禁止函數修改列表,為解決這個問題,可想向函數傳遞列表的副本而不是元件;這樣函數所做的任何修改都只影響副本,不影響元件
有時候,預先布置的函數需要接受多少個實參,python允許函數從調用語句中手機任意數量的實參
一個制作披薩的寒素,它需要接受很多配料,但無法確定顧客要多少種配料,下面函數只有一個形參*toppings,不管調用語句提供了多少實參,這個形參都將他們統統收入囊中
如果要讓函數接受不同類型的實參,必須在函數定義中將接納任意數量實參的形參放在最后
python先匹配位置實參和關鍵字實參,再將余下的實參收集到最后一個形參中
如果前邊的函數還需要一個表示披薩尺寸的實參,必須將該形參放在*toppings的前面
有時候,需要接受任意數量的實參,但預先不知道傳遞給函數的會是射門楊的信息,再這種情況下,可將函數編寫成能夠接受任意數量的鍵-值對,調用語句提供了多少就接受多少
創建用戶簡介:你知道你將收到有關用戶的信息,但不確定會是什么樣的信息,在下面示例中,build_profile()接受名和姓,同時還接受任意數量的關鍵字實參