一、複習
#1.什麼是字串
#序列;
#不可變,有序的
#2.元素—字元:普通字元,轉義字元(\n、`t、
』、
\`、\u4位的16進製制數)
#r語法
str1=』\u4e00abc』
#3.字元編碼
#ascii碼表:大寫字母在前面
#unicode編碼表:4e00~9fa5
#chr(編碼值)
#ord(字元)
#4.字串
#查—和列表一樣
#相關操作— +、*、==、!=、>、<、>=、<=、in、not in
#max、min、sorted
#str、len
#相關方法:count、join、split、replace、upper(將字串中的小寫字母轉換成大寫字母)
一、字串的格式化
#1. 字串格式化 - 字串格式佔位符
語法:包含字串佔位符的字串 % (資料1, 資料2, 資料3,…)
說明:1)字串佔位符
%s - 字串對應的佔位符(可以用任何型別的資料賦值);保留原小數的格式
%d - 整數對應的佔位符;保留小數的整數字
%f - 小數對應的佔位符(預設保留6位小數); %.nf - 保留n位小數;可以控制保留小數的位數
2)資料
資料的個數必須和前面佔位符的個數保持一致
資料可以是任何有結構的表示式
當只有乙個資料的時候括號可以省
message = 『%s今年%s歲!月薪:%s元』 % (name, age, money)
print(message)
message = 『%s今年%s歲!年薪:%s元』 % (name, age, money*12)
print(message)
num = 1.934
message = 『abc:%s』 % num
print(message) #abc:1.934
message = 『abc:%d』 % num
print(message) #abc:1
message = 『abc: %.2f』 % num
print(message) #abc: 1.93
#2.f-string
#字串最前面加f,就可以在字串中通過』'結構來確定字串中變化的內容
message = f』今年歲!月薪:元』
print(message)
message = f』今年歲!年薪:元, a的編碼值是:』
print(message)
##1):.nf —控制保留n位小數num = 1.234print(f』a:』) # a:1.23
#2)# 資料:符號》n —讓資料變成長度是n的字串,不夠的在前面填充指定符號
#資料:符號num = 4 # 004
print(f』python2101』) # python21014
print(f』python2101』) # python2101004
print(f』python2101』) # python2101400
print(f』python2101』) # python21014**
print(f』python2101』) # python2101***4
#3) :.n% - 將數轉換成百分比,同時百分數保留n位小數
num = 0.75print(f』及格率:』)
#及格率:75.0%# 4) :,money = 198000008
print(f』餘額:』) # 餘額:198,000,008
二、函式(非常重要)
#1.函式式程式設計
遇到問題先考慮有沒有乙個已存在的函式能夠幫住解決這個問題,如果有直接用,沒有自己建立乙個能解決這類問題的函式。
#2.認識函式
1)什麼是函式:函式就是實現某一特定功能**的封裝;每個函式都有乙個特定的功能
2)函式的分類(按函式是誰來定義的)
系統函式:python自帶的函式,程式設計師在需要的時候使用就行。(例如:print、input、type、id、max、…)
自定義函式:由程式設計師自己建立然後使用的函式
#3.定義函式
a. 語法:
def 函式名(引數列表):
函式說明文件
函式體
#定義乙個函式的功能是求兩個數的和
def sum2(num1,num2):
"""求和(功能說明區)
:param num1: 第乙個數(引數說明)
:param num2: 第2個數
:return: none (返回值說明區)
"""print(num1+num2)
b. 說明:
1)def—關鍵字,固定寫法
2)函式名—由程式設計師自己命名;
要求:識別符號;不能是關鍵字
規範:見名知意(看到函式名大概知道函式的功能)、下劃線隔開多個單詞或者多個單詞之間首字母大寫、不使用系統函式名
3)(): —固定寫法
4)引數列表—形參列表
多個變數名用逗號隔開:變數1,變數2,…
作用:將函式外部的資料傳遞到函式裡面
怎麼確定形參的個數:看實現函式的功能需不需要額外的資料,需要幾個
5)函式說明文件—本質就是用三個「」「開頭和結尾的注釋
6)函式體—和def保持乙個縮排的一條或者多條語句;
函式體就是實現函式功能的**
c. 重要結論:定義函式時不執行函式體,呼叫函式才會執行函式體
#練習:
#定義乙個函式統計字元中中文的個數
def chinese(str1):
count = 0
for x in str1:
if '\u4e00' <= x <= '\u9fa5'
count += 1
print (count)
#定義乙個函式將指定列表中的元素逆序
def lie(list):
print(list[::-1])
#定義乙個函式刪除指定字串中指定字元
def dele(string,char):
new_str = ''.join([x for x in string if x != char])
print(new_str)
#定義乙個函式將兩個字串中的字元交叉合併:'abc'、'123' -> a1b2c3 'abc'、'123456' ->a1b2c3456
def crisscross_merge(str2,str3):
new_str = ''
l1,l2 = len(str2),len(str3)
if l1 > l2:
l1,l2 = l2,l1
for index in range(11)
new_str += str1[index] + str2[index]
new_str += str1[l1:] +str2[l2:]
print(new_str)
#4.呼叫函式
a. 語法:
函式名(實參列表)
b. 說明:
1)函式名—必須是已經定義過的函式函式名
2)() — 固定寫法
3)實參列表—多個資料用逗號隔開
實參就是通過形參傳遞到函式中使用的資料
實參有多少個看被呼叫的函式的形參的個數
#5.函式呼叫過程:(非常重要)
當程式執行到呼叫函式的語句的時候:
第一步:回到函式定義的位置
第二步:傳參(用實參給形參賦值),傳參的時候必須保證每個引數都有值
第三步:執行函式體
第四步:確定函式返回值
第五步:回到函式呼叫的位置接著往後執行
Kotlin學習筆記3 12 類和物件 委託
kotlin官網 classes and objects delegation kotlin對委託模式提供原生的實現 inte ce base class baseimpl val x int base class derived b base base by b fun main args arr...
leetcode刷題筆記312題 戳氣球
leetcode刷題筆記312題 戳氣球 問題描述 有 n 個氣球,編號為0 到 n 1,每個氣球上都標有乙個數字,這些數字存在陣列 nums 中。現在要求你戳破所有的氣球。如果你戳破氣球 i 就可以獲得 nums left nums i nums right 個硬幣。這裡的 left 和 righ...
3 1 2 函式的宣告
3.1.2 函式的宣告 正如我們在前面提到的,可以使用 let 繫結宣告函式。我們用乙個相當簡單的函式來演示,實現兩個引數的相乘。只要在 f interactive 中輸入 let multiply num1 num2 num1 num2 val multiply int int int 函式宣告,...