python 入門筆記 語法基礎 上

2021-09-21 07:41:25 字數 4618 閱讀 6080

寫在前面:ide:visual studio code 

以下原始碼均可直接執行,python其實對於學過c++或c語言的人來說是比較好上手的,主要差別是python更注重格式縮排之類,其表達法甚至比c語言還靈活

目錄 字串方法(常見函式及其使用)格式化字串if語句練習elif語句練習列表和下標列表簡單運用

​my_string="hello world!"

print(int (len(my_string))) #輸出字串長度

index=my_string.find("888")

print(int (index)) #如果子串在原串中匹配,返回原串中子串第乙個字元的下標,找不到系統則報錯

c=my_string.count("l")

print(c) #記錄找到子串的次數,如果沒出現則為零

new_string=my_string.replace("ello","*") #兩個引數,第乙個是要變換的字元,第二個是要換上去的字元

print(new_string)

print("h"in my_string) #in 可表示某個字串是否包含在原串中,返回值為布林值true false

print("h" not in my_string) #同樣還有not in

my_string="123,456,789"

sub_my_string=my_string.split(",")

print(sub_my_string) #split 意為分割,括號內引數含義是分割標誌 sub_my_string=["123","456","789"],為列表型別

f-string(python 3.6+)

name ='老王'

age=18

result="你好"+name+","+"你今年已經"+str(age)+"歲了!"

result=f"你好,你今年已經歲了!" #python3.6版本以上才可使用

format()

result="你好,你今年已經歲了!".format(name,age)

%(已棄用)

result="你好%s,你今年已經%d歲了!" %(name,age)

[(填充)對齊] [符號] [寬度] [.精度] [型別] 《左對齊,>右對齊,^ 居中對齊

pi=255

表示成百分制形式

result=f"圓周率是乙個無限不迴圈小數"

表示成其他進製的數值

print(result)

if  語句練習

'''要求實現,使用者從終端輸入乙個數並接收,判斷是不是偶數

''''''

num=(input("請輸入乙個整數:"))

num=int (num)

if num%2==0 :

print(f"你輸入的數是,它是乙個偶數")

if num % 3 ==0 :

print(f"還可以被3整除!")

else :

print(f"不可以被3整除。")

else:

print(f"你輸入的數是,它是乙個奇數")

print("end")

'''

#elif 語句練習

score=input("請輸入分數(0-100)")

if score.isdigit(): #判斷字串是否由數字構成,如果是,則返回true else false

score=int(score)

# 根據分數確定等級

# 100 s

# 90-99 a

# 80-89 b

# 70-79 c

# 60-69 d

# 0-60 e

if 0<=score<=100:

if score==100 :

print("s")

elif score>=90:

print("a")

elif score>=80:

print("b")

elif score>=70:

print("c")

elif score>=60:

print("d")

else:

print("e")

else:

print("你輸入有誤!")

第一題:

#提示使用者輸入乙個月份,判斷這一年是不是閏年

year=input("請輸入乙個有效的年份:")

if year.isdigit():

year=int(year)

if(year%400==0 or(year%4==0 and year%100)):

print(f"是閏年!")

else :

print(f"是平年!")

第二題:

#提示使用者輸入乙個1-99999之間的整數,依次顯示這個數各個數字上的數值(從小到大)

num=input("請輸入乙個有效的數字:")

if num.isdigit():

num=int(num)

while(num):

print(num%10)

num//=10

第三題:

#設計乙個剪刀石頭布的猜拳遊戲

# 1-石頭

# 2-剪刀

# 3-布

import random #生成隨機數

system_number=random.randint(1,3)

user_number=input("請輸入乙個有效數值:\n1.剪刀\n2.石頭\n3.布")

user_number=int(user_number)

if(user_number==system_number):

print(f"system_number是,your number是,平局")

else:

if((user_number>system_number and not (system_number==1 and user_number==3))or (system_number==3 and user_number==1)):

print(f"system_number是,your number是,you win!")

else :

print(f"system_number是,your number是,you lose!")

a= #空列表,列表是python中最基礎的資料結構

列表下標從零開始,使用下標獲取元素 my_list[x]

也支援負數下標 my_list[-1]

可以使用[start:end:step]對列表進行擷取 my_list[1:4:1]表示對列表從一到四擷取,步長為一

b=[1,3.14,"h",true] #布林值true首字母要大寫,false 同理

print(type(b)) #明白字串和列表的乙個重大區別:字串不可變,不支援修改操作,列表卻能

eg.c="hello"

c[0]="k"# 錯誤,字串是不可變型別

b[0]="hi"

print(b) #控制台輸出['hi', 3.14, 'h', true]

倒序輸出列表和倒序輸出字串的方法一樣

print(b[::-1])

a=[1,2,3,4]

if 5 in a:

print(f"裡包含這個元素")

else:

print(f"裡沒有這個元素")

列表中最後乙個元素的正數下標:列表長度-1

count=len(a)

print(count)

b=["a","b","c"] #列表合併操作

new_list=a+b

print(new_list)

c=a*3

print(c) #輸出[1, 2, 3, 4, 1, 2, 3, 4, 1, 2, 3, 4]

列表反轉操作:兩種方法

1.可以print(a[::-1])

2.a.reverse

e.ga.reverse() #不是reverse(a)

print(a) #需注意a.reverse不需要新的變數來接收!

max_value=max(a),min_value=min(a)#獲取列表中最大元素:當然前提是列表元素是同一型別的數值,如同整型,浮點型,當然全是字串也可以比較

對列表排序

a.sort()

print(a) #對列表排序:當然前提是列表元素是同一型別的數值,如同整型,浮點型,當然全是字串也可以比較

諸如變數名.()我們習慣稱為方法

如a.sort(),a.reverse()

另一類是 len(a),min(a),max(a)我們稱為函式

預知後事如何,請看下回分解

演算法基礎(上)

演算法 algorithm 是指解題方 而完整的描述,是一系列解決問題的清晰指令,演算法代表著用系統的方法描述解決問題的策略機制,簡單來說就是解決問題的步驟 演算法特徵 有窮性 確切性 輸入項 輸出項 可行性特徵 含義有窮性 演算法在執行有限個步驟之後終止 確切性演算法的每一步必須有確切的定義 輸入...

Python自學 08 函式基礎(上)

就像中學所學的一樣,也可以稱之為 方法 可以用來解決各種數學計算或者實現切合實際的功能,例如計算圓的面積 s pi r r,只要知道半徑,什麼圓的面積都可以計算出來。這就是一種抽象,再舉個栗子 計算數列的和 1 2 3 100,可以抽象記成 而電腦程式也是一樣,函式就是一種最基本的一種 抽象的方式。...

WS BPEL語言基礎(上)

16.1.ws bpel語言基礎 在我們能夠設計編排層之前,我們需要很好地理解如何正式地表達流程的操作特徵。本書使用ws bpel語言來演示流程邏輯如何能夠被作為具體定義的一部分來描述 圖16.1 從而能夠通過相適應的編排引擎來實現和執行。圖16.1.常見的ws bpel流程定義結構 雖然你很可能會...