最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

1st Python基礎(chǔ)語法

2021-01-05 20:53 作者:MoNanGo  | 我要投稿

1.1 Python的介紹和安裝

1.1.1 編程語言的分層

  • 機(jī)器語言:直接和硬件打交道,01代碼,控制硬件功能。但對于人太難記憶和理解了。

  • 匯編語言(嵌入式開發(fā)用到):用人熟悉的語言來表示01代碼不出。但是開發(fā)效率不夠高效,比如寫一個Hello world需要十幾行代碼。

  • 高級語言(如C、Java、Python等):對底層硬件的指令做了封裝,可以使調(diào)用功能的代碼大大簡化,提高開發(fā)效率。

1.1.2 安裝

因為自己博客寫過了,這里就給出鏈接就好了。

Python環(huán)境與Pycharm的安裝https://blog.csdn.net/Ans_min/article/details/104102046

1.2 變量、常量和注釋

1.2.1 變量

變量使用的規(guī)則:

  1. 先定義變量,變量存儲在內(nèi)存里;

  2. 后面的代碼來調(diào)用。

?x = 2
?y = 3
?print(x+y) # 輸出5

1.2.2 變量名的定義

  1. 變量名只能是字母、數(shù)字或下劃線的任意組合;

  2. 變量名的第一個字符不能是數(shù)字;

  3. 以下關(guān)鍵字不能聲明為變量名['and', 'as', 'assert', "break', 'class', 'continue', 'def', 'del', 'elif', 'else', 'except', 'exec', 'finally', 'for', 'from', 'globall', 'if', 'import', "in', 'is', 'lambda', 'not', 'or', 'pass', 'print', 'raise', 'return', 'try', 'while', 'with', 'yield'];

  4. 特殊字符不能包含在變量名內(nèi)。

1.2.3 變量名的規(guī)范

變量名違反1.2.2的定義就會報錯,但是變量名還應(yīng)該保持一致的格式,培養(yǎng)良好的編程習(xí)慣。一般有兩種規(guī)范:age_of_person = 23,NumberOfStudents = 80。

個人習(xí)慣第一種,也是Python官方的推薦規(guī)范,第二種自己喜歡在Java里面用。

其他規(guī)范還有:

  • 變量名也不應(yīng)該用漢字或者拼音,別人看會比較蠢。。。

  • 變量名也不能太長,也不要詞不達(dá)意,要方便理解

1.2.4 變量的修改

?name = 'zm'
?print(name)
?name = 'new_zm' # 變量的修改
?print(name)

1.2.5 常量

Python沒有常量的語法,所以大家通過全部大寫的變量名來表示常量,方便告訴別的程序員這是一個常量,比如SYSTEM_NAME = 'XXX系統(tǒng)'


1.2.6 注釋

?# 單行注釋 一般#后加一個空格,符合規(guī)范
?"""
?三個雙引號可以
?多行注釋
?Python官方推薦
?"""
?'''
?三個單引號也可以
?多行注釋
?不推薦
?'''
?
?# 注釋的代碼不執(zhí)行

1.3 基本數(shù)據(jù)類型

1.3.1 查看數(shù)據(jù)類型

?# type可以查看數(shù)據(jù)的類型
?name = 'zm'
?age = 18
?print(type(name))
?print(type(age))

1.3.2 字符串和數(shù)字

數(shù)字(int/float)

數(shù)字包括類型有:

  • int 整數(shù) 最大儲存 262

    • long 無限大(很多億) Python3里去掉了,所有整數(shù)都按int類型處理

  • float 浮點數(shù)

  • 復(fù)數(shù)(比較少用,不介紹)

字符串(str)

定義:

有引號的就是字符串。比如name = 'zm',這里的name就是字符串類型的數(shù)據(jù)。Python中單引號雙引號三引號都可以用來表示字符串,其中三引號可以表示多行的字符串,我們放在段落里講(單引號和雙引號可以通過\n來實現(xiàn))

拼接:

?name1 = 'zm'
?name2 = 'lalala'
?print(name1 + name2) # 實現(xiàn)字符拼接輸出zmlalala
?print(name1*3) # 打印三遍name1

段落:

三引號可以寫多行字符。

?name = '''
?zm
?wzw
?yz
?'''
?print(name) ?# 輸出多行數(shù)據(jù)

1.3.3 布爾(bool)

a = 3b = 5,則可以得到b > a。計算機(jī)描述b > a是通過布爾類型來描述,布爾類型有兩種:TrueFalse。比如a = 3; b = 5; print(a<b),輸出的結(jié)果就為True。布爾類型在if語句中經(jīng)常搭配使用。

1.3.4 列表

列表的作用:一個存多個數(shù)據(jù),而且方便取其中的某個或某些數(shù)據(jù)。

?names = ['zm', 'wzw', 'yz']
?print(type(names)) ?# 輸出list類型
?print(names[0]) ?# 輸出zm
?print(names[2]) ?# 輸出yz

列表里每個數(shù)據(jù)被稱作元素,元素之間以逗號隔開,取值時根據(jù)下標(biāo)取即可。關(guān)于下標(biāo)(又稱索引),就是列表自帶的一個東西,默認(rèn)給每個元素按順序從0開始給下標(biāo)。比如上面的代碼中,'zm'的下標(biāo)是0,'wzw'的下標(biāo)是1,以此類推。

列表的增

?# 插入
?names = ['zm', 'wzw', 'yz']
?# names.insert(位置, 插入元素)
?names.insert(1, 'zk') # 插入到位置1,原位置1以及后面的元素向后移
?print(names) # 輸出的是['zm', 'zk', 'wzw', 'yz']?# 追加(插入無法將數(shù)據(jù)放在列表的最后面,append就可以)
?names = ['zm', 'wzw', 'yz']
?names.append('zk') # append只能加在列表的最后面
?print(names) # 輸出['zm', 'wzw', 'yz', 'zk']

列表的刪

?names = ['zm', 'wzw', 'yz']
?# 用正序下標(biāo)定位
?del names[0] # 刪除'zm'
?# 用倒序下標(biāo)定位
?del names[-1] # 刪除'yz'
?
?print(names) # 輸出['wzw']

列表的改

?names = ['zm', 'wzw', 'yz']
?names[0] = '朱明' # 將'zm'元素改成'朱明'
?print(names) # 輸出['朱明', 'wzw', 'yz']

列表的查

?names = ['zm', 'wzw', 'yz']
?# 單純的看該元素在不在列表中
?print('zm' in names)
?
?# 查元素的下標(biāo)
?print(names.index('zm')) # 返回'zm'的下標(biāo),即0
?# PS:若查詢的列表中沒有查詢的元素就會報錯,顯示該元素'is not in list'

命令嵌套

多種命令搭配,比如刪除zm元素。

?names = ['zm', 'wzw', 'yz']
?del names[names.index('wzw')] # 刪除元素zm

P.S. 這種刪除方法不推薦!只是演示有這種方法而已。

還有很多其他數(shù)據(jù)類型,這里者介紹數(shù)字、字符串和列表三種,其他數(shù)據(jù)類型(字典dict、集合set、元組tuple等)之后再慢慢介紹到。

1.4 讀取輸入用戶指令

Python終端中進(jìn)行交互的一個方法。

?# 用戶輸入,不輸入程序不會執(zhí)行下面的語句
?name = input('please input your name:')
?
?print(name) # 輸出用戶輸入的數(shù)據(jù)

需要注意的點:

  1. input()獲得的數(shù)據(jù)皆為字符串str類型;

  2. 多個數(shù)據(jù)輸入時,使用多條input語句就好。

1.5 格式化輸出

?name = 'zm'
?print('My name is %s' % name)
?print('My name is ', name)
?print(f'My name is {name}')
?print('My name is {}'.format(name))

關(guān)于格式化輸出的一些說明:

  1. 以上的方法建議使用第一種和第三種,個人喜歡第三種,方便。

  2. 還可以多行輸出的格式化,可以自行試試。

  3. 對于第一種方法,%s表示字符串,%d表示整形數(shù)字,%f表示浮點數(shù),其他的可以自行百度查詢。

1.6 運(yùn)算符

1.6.1 算術(shù)運(yùn)算

  • +:加號,比如1+2=3

  • -:減號,比如2-2=0

  • *:乘號,比如2*2=4

  • /:除號,比如2/1=2

  • %:取余,比如7%3=1

  • **:冪運(yùn)算,比如2**3=8

  • //:取整除,比如7%3=2

1.6.2 比較運(yùn)算

  • ==:等于

  • !=:不等于

  • <:小于

  • >:大于

  • >=:大于等于

  • <=:小于等于

1.6.3 賦值運(yùn)算

  • =:單純的賦值

  • +=:比如c+=a等價于c = c + a

  • -=:同+=

  • *=:同+=

  • %=:同+=

  • /=:同+=

  • **=:同+=

  • //=:同+=

1.6.4 邏輯運(yùn)算

  • and:多個條件都為真就返回真,有一個假就返回假

  • or:多個條件有一個為真就返回真,全都為假就返回假

  • not:取反


1.6.5 身份運(yùn)算

  • is:類似于==;但是,is比較的是兩個數(shù)據(jù)的id,即兩個指針是否指向一個值,==只判斷值是否相等。

    ?# -*- encoding: utf-8 -*-
    ?a = 10
    ?b = 10
    ?
    ?print(id(a))
    ?print(id(b))
    ?
    ?if a is b:
    ? ? ?print('is OK') # 輸出這個
    ?else:
    ? ? ?print('is NO')
    ?
    ?if a == b:
    ? ? ?print('== OK') # 輸出這個
    ?else:
    ? ? ?print('== NO')

1.7 流程控制之if..else

1.7.1 為何要縮進(jìn)

C和Java中用{}來進(jìn)行代碼分級,Python中采用縮進(jìn)來進(jìn)行代碼分級,一般四個空格為一個縮進(jìn),也可以兩個空格,沒有嚴(yán)格要求,只是需要保持代碼中的縮進(jìn)保持一致即可,否則會報錯。

1.7.2 單分支

?weather = 'rain' # 程序輸出:帶傘和出門
?# weather = 'sun' # 程序輸出:出門
?
?if weather == 'rain':
? ? ?print('帶傘')
?
?print('出門')

1.7.3 雙分支

?age = 18 # 修改age,大于等于18和其他數(shù)值會產(chǎn)生不同輸出結(jié)果
?if age>=18:
? ? ?print('be allowed in')
?else:
? ? ?print('not be allowed in')

1.7.4 多分支

?age = 18
?if 18 <= age < 30:
? ? ?print('可以工作')
?elif age >= 30:
? ? ?print('退休了')
?else:
? ? ?print('年齡沒有達(dá)到要求')
?# 也可以多個elif,else不是必須要有的

1.8 小程序

需求:ABCDE五個分?jǐn)?shù)等級,對應(yīng)關(guān)系是:

A:90-100;B:80-89;C:60-79;D:40-59;E:0-39。

示例代碼:

score = int(input('please input your score:'))
?
?if 0 <= score <= 39:
? ? ?print('E')
?elif 40 <= score <= 59:
? ? ?print('D')
?elif 60 <= score <= 79:
? ? ?print('C')
?elif 80 <= score <= 89:
? ? ?print('B')
?elif 90 <= score <= 100:
? ? ?print('A')
?else:
? ? ?print('請輸入0-100的數(shù)字')

1.9 猜隨機(jī)數(shù)

?import random
?
?number = random.randint(0, 100)
?
?while True:
? ? ?input_number = int(input('input your guess number:'))
? ? ?if input_number == number:
? ? ? ? ?print('bingo!')
? ? ? ? ?break # 終止循環(huán)
? ? ?elif input_number < number:
? ? ? ? ?print('猜小了')
? ? ?elif input_number > number:
? ? ? ? ?print('猜大了')

1.10 流程控制之while循環(huán)

?while True:
? ? ?print('循環(huán)執(zhí)行')
?# P.S. 這段代碼是死循環(huán),注意要手動停止!
?# while后面的條件如果是True,那么循環(huán)就不斷執(zhí)行,直到后面的條件為False

1.10.1 break和continue

break:終止循環(huán)

continue:結(jié)束本次循環(huán)

?max_num = 10
?count = 1
?while True:
? ? ?if count > 10:
? ? ? ? ?break
?
? ? ?if count % 2 == 0:
? ? ? ? ?if count % 4 == 0:
? ? ? ? ? ? ?count += 1
? ? ? ? ? ? ?continue
? ? ? ? ?print(count)
?
? ? ?count += 1

1.10.2 死循環(huán)

保持while后面的條件一直保持True就會一直死循環(huán)下去,不會中斷。

# 從1加到100

# -*- encoding: utf-8 -*-
?# 方法1
?s = 0
?for i in range(1, 101): # range()后面會講到
? ? ?s += i
?print(s)
?
?# 方法2
?print(sum(range(1, 101)))

1.10.4 打印0到100的偶數(shù)

?max_num = 100
?count = 1
?while True:
? ? ?if count > max_num:
? ? ? ? ?break
?
? ? ?if count % 2 == 0:
? ? ? ? ?print(count)
?
? ? ?count += 1


因為小破站上的文本格式對演示代碼極其不友好,而且自己平時的筆記是通過Markdown語法來記錄的,在格式上和美觀程度上不是很好看,如果你看的不習(xí)慣,就去下載一個Typora(或者支持markdown語法的應(yīng)用),我這里給出md文件的迅雷網(wǎng)盤鏈接(百度網(wǎng)盤上傳不了),然后用Typora打開文件看就好了。

鏈接:https://pan.xunlei.com/s/VMQH_VtuXxJaZePoGyJxTkDUA1
提取碼:ppx5


1st Python基礎(chǔ)語法的評論 (共 條)

分享到微博請遵守國家法律
东阳市| 南京市| 呼玛县| 固始县| 深泽县| 无锡市| 东阿县| 元朗区| 江永县| 太康县| 扶余县| 敦煌市| 岳西县| 长葛市| 若羌县| 绵竹市| 揭西县| 茌平县| 栾城县| 甘孜| 射洪县| 漳浦县| 永福县| 海城市| 永定县| 禄丰县| 故城县| 岳池县| 怀柔区| 郎溪县| 营口市| 南涧| 柏乡县| 阿勒泰市| 大宁县| 玉溪市| 肥西县| 仁化县| 琼结县| 昔阳县| 双桥区|