ParisGabriel:Python無止境 day06

來源:互聯網
上載者:User

標籤:color   oct   sci   斜杠   www   abc   logs   函數   序列   

ParisGabriel

   Python 入門基礎   

字串:str
用來記錄文本資訊
字串的表示方式:
在非注釋中凡是用引號括起來的部分都是字串
‘’單引號
“”雙引號
‘‘‘ ‘‘‘ 三單引
""" """ 三雙引
有內容代表非Null 字元串否則是Null 字元串

區別:
單引號內的雙引號不算結束符
雙引號內的單引號不算結束符
三引號內的換行會自動轉換為分行符號
三引號內可以包含單引號和雙引號

隱式字串拼接:

s = "I‘m a I‘m a programmer" ‘heoll "wored"‘

轉移符:
\‘單引號
\"雙引號
\\單反斜線
\n換行
\r返回游標至行首
\t水平定位字元
\v垂直定位字元
\f換頁
\b倒退
\0Null 字元,字元值為0
\xXX ,XX為兩位16進位表示的自符
\uXXXX ,XXXX為4個16進位的Unicode16字元
\UXXXXXXXX ,8個16進位表示的Unicode32字元

ASCII編碼:
man ASCII :查看協助文檔命令

 


常用ASCII編碼:
字元十進位十六進位
0 48 0x30
A 65 0x41
a 97 0x61

Unicode:
統一編碼,分為Unicode16、Unicode32

序列的概念:
字串就是序列
函數:
len(x) 返回字串的字元個數
raw 字串:
讓轉義符號\無效
格式:
r‘字串內容’
print(r“\n\\\t”)
字串的運算:
+用於拼接字串
*用於產生重複字串
字串的相乘只能與整數
+=   *= 與其他符合運算子相同
in / not in 運算子:
用於判斷某個字串是否在
相當於字串出現過 如果出現過返回true 否則返回false
字串的比較運算:
> >= < <= == !=
依次按照編碼進行比較,直到最短字串結束為止

索引(下標):
Python的字串是不可以改變字元序列的

 

index:
字串[整數運算式]
Python序列都可以用索引來訪問序列中的對象
Python的序列正向索引是沖0開始的最後一個索引為len(s)-1
Python序列的反響索引是從-1開始的 -1是最後一個 第一個是 -len(s)

切片:
slice
從一個字串序列中取出相應的元素重新組成一個字串系列
文法:
字串序列[(開始索引b):(結束索引e):(步長s)]
小括弧括起的部分代表可省略
說明:
開始索引是切片開始切下的位置,0代表第一個元素,1代表第二個,-1代表最後一個
結束索引是切片的終止索引(但不包括終止點)
步長:
是切片每次擷取當前元素後移動的方向和位移量
沒有步長,相當於取值完成後向右移動一個索引的位置預設1
當步長代表為正數時取正向切片 步長預設為1 開始位置為0 結束為len(s)步長代表下一次索引的取值增長值
當步長為負數時 取反向切片 預設的起始位置是最後一個元素,終止位置是第一個元素的前一個位置

Python3中常用於序列函數:
len(x)返回序列長度

max(x)返回序列最大值元素

min(x)返回序列最小止元素

字串編碼轉換函式:
ord(c)返回一個字元的Unicode值(十進位)

chr(i)返回 i這個整數的值所對應的字元

整數轉字串函數:
bin(i) 將整數轉換為二進位的字串

oct(i) 將整數轉換為八進位的字串

hex(i) 將整數轉換為十六進位的字串

二進位轉換其他進位是非常好轉的

100=4  011=5 10=2  156=0o452 (八進位)

1100=c 1001=9       156=0x9c (十六進位)

字串的建構函式:
str(obj=“”) 將對象轉換為字串

常用的字串方法:
文檔參見:
對象.方法名(方法傳參)
"abc".isalpha() # 文法是對的
123.isalpha() # 文法是錯的
方法說明
S.isdigit()判斷字串中的字元是否全為數字
S.isalpha()判斷字串是否全為英文字母
S.islower()判斷字串所有字元是否全為小寫英文字母
S.isupper()判斷字串所有字元是否全為大寫英文字母
S.isspace()判斷字串是否全為空白字元
S.center(width[,fill])將原字串置中,左右預設填充空格 width:所置中字串的長度 fill:預設填充空格

S.count(sub[, start[,end]])擷取一個字串中子串的個數 sub:所要擷取的字串 start:起始位置 end:結束位置
S.find(sub[, start[,end]])擷取字串中子串sub的索引,失敗返回-1 start:起始位置 end:結束位置

S.strip()返回去掉左右空白字元的字串
S.lstrip()返回去掉左側空白字元的字串
S.rstrip()返回去掉右側空白字元的字串
S.upper()產生將英文轉換為大寫的字串
S.lower()產生將英文轉換為小寫字串
S.replace(old, new[, count])將原字串的old用new代替,產生一個新的字串 count:更換的次數
S.startswith(prefix[, start[, end]])返回S是否是以prefix開頭,如果以prefix開頭返回True,否則返回False,
S.endswith(suffix[, start[, end]])返回S是否是以suffix結尾,如果以suffix結尾返回True,否則返回False

以下是不常用的
S.title()產生每個英文單詞的首字母大寫字串
S.isnumeric()判斷字串是否全為數字字元

練習:
1.
輸入一個字串用s綁定
判斷輸入有幾個人空格
將原字串的左右空格空白符去掉
列印剩餘的字元個數
判斷輸入的是否是數字
如果是數字判斷這個數是否大於100

 答案:

print("Answer to question 1:", "\n")s = input("plaese input at will string:")print("you input string blank have ", s.count(" "))print("string surplus:", len(s.strip()))if s.isdigit() is True:    if int(s) > 100:        print("input integer:", s, ">100")    else:        print("input integer:", s, "<100")else:    print("you input contain alpha:", s)

 

2.
輸入3行文字,讓這三行文字在一個方框內置中顯示
顯示如下:
+---------------+
|       hello      |
|    123123    |
|      |
+---------------+
註:請不要輸入中文

答案:

print("Answer to question 2:", "\n")a = input("plaese input at will string 1:")b = input("plaese input at will string 2:")c = input("plaese input at will string 3:")top = aif top < b:    top = bif top < c:    top = cprint("+" + "-" * (len(top) * 2 + 10) + "+")print("|" + a.center(len(top) * 2 + 10) + "|")print("|" + b.center(len(top) * 2 + 10) + "|")print("|" + c.center(len(top) * 2 + 10) + "|")print("+" + "-" * (len(top) * 2 + 10) + "+")

 

 

 

 

ParisGabriel:Python無止境 day06

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.