国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Python > 正文

《Python入門》筆記

2019-11-08 18:36:29
字體:
來源:轉載
供稿:網友

中間斷了一段時間,現在把慕課網上《Python入門》看完了,也敲完了課程中留的代碼作業,可能因為沒有實戰過的原因,現在并不能明顯的感覺到可以用Python來做什么。 但是學完了總得留下點什么吧,現在回顧一下。 整體感覺,這是一種高級語言,可以用較少的代碼實現功能,而且更容易閱讀。

代碼格式或語法

代碼行末不需要加”;”,直接換行即可;

代碼塊用縮進區分,同意代碼塊縮進相同,比如下面這個,函數并沒有用大括號,而是冒號后面的代碼保持了相同的縮進

# 7-4 一元二次方程求根公式def quadratic_equation(a, b, c): x1 = (-b + math.sqrt(b * b - 4 * a * c)) / 2 * a x2 = (-b - math.sqrt(b * b - 4 * a * c)) / 2 * a return x1, x2PRint quadratic_equation(2, 3, 0)

對于中文字符的支持

在代碼文件頭部添加

# -- coding: utf-8 --

但用Pycharm的時候頭部添加的是

# coding=utf-8

效果是一樣的

list tuple set dic

這幾個表還得單獨總結一下

可以返回多個值,上面代碼就是個例子

再舉一個不太恰當的例子

def firstCharUpper(s): return s[0].upper()+s[1:]# return s[0].upper(), s[1:]print firstCharUpper('hello')print firstCharUpper('sunday')print firstCharUpper('september')

輸出結果為

HelloSundaySeptember

而如果用注釋的那行return則結果為:

('H', 'ello')('S', 'unday')('S', 'eptember')

return語句一次可以返回多個值,用逗號分開的話相當于返回了s[0].upper() 和 s[1:] 那么對于print語句,自然也是把s[0].upper() 和s[1:]當成兩個值來打印了。這里可以看出Python的函數返回多值其實就是返回一個tuple。 加號用來連接字符串,得到的結果就是一個字符串。

函數可以有默認參數

如果調用的時候不傳參數就使用默認的參數

def greet(s="world"): print "Hello, " + s + "."greet()greet('Bart')

分別輸出Hello, world. 和Hello, Bart.

定義可變參數

def average(*args): summ = 0.0 if len(args) == 0: return summ for x in args: summ += x avg = summ / len(args) return avgprint average()print average(1, 2)print average(1, 2, 2, 3, 4)

一個*args就不限定參數類型和個數了 可變參數也不是很神秘,Python解釋器會把傳入的一組參數組裝成一個tuple傳遞給可變參數,因此,在函數內部,直接把變量 args 看成一個 tuple 就好了。

利用for循環生成列表

這其實是for的一種,在別的語言中沒見過的用法

生成列表

[x * x for x in range(1, 11)] ```輸出

[1, 4, 9, 16, 25, 36, 49, 64, 81, 100]

代碼里面for語句似乎是返回了一個值給它前面的代碼段使用##復雜表達式```pythontds = [generate_tr(name, score) for name, score in d.iteritems()]<div class="se-preview-section-delimiter"></div>

for循環得到的name和score作為參數返回給前面的函數使用

條件過濾

def toUppers(L): return [x.upper() for x in L if isinstance(x, str)]print toUppers(['Hello', 'world', 101])<div class="se-preview-section-delimiter"></div>

多層表達式

倆for 雙層循環

print [100 * x + 10 * y + x for x in range(1, 10) for y in range(0, 10)]
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 龙南县| 敦煌市| 井陉县| 林甸县| 朔州市| 葫芦岛市| 应用必备| 朝阳市| 安塞县| 临汾市| 旺苍县| 谢通门县| 贡嘎县| 庆城县| 陆良县| 和平区| 通渭县| 株洲县| 西乌珠穆沁旗| 拜泉县| 斗六市| 湄潭县| 黔南| 滁州市| 恭城| 柳河县| 芦山县| 绿春县| 昭觉县| 那曲县| 石台县| 龙泉市| 个旧市| 得荣县| 南陵县| 玉溪市| 类乌齐县| 巴彦县| 太谷县| 红桥区| 民丰县|