(5)python 字符串和輸入輸出


一、字符串轉義

字符串可以包含任何字符可以用單引號也可以用雙引號

 a='hello'
 a="hello"

如果字符串中存在單引號,可以用雙引號里包含單引號的方式

a="I'm ..."

反之

a='"hello!", tom said'

還可以使用轉義字符串 \

a='I\'m is..'

 

 

 二、拼接字符串

拼接字符串

1.用加號進行連接

2.依次輸入兩個字符串,會自動拼接

3.多行語句

(1)Python 通常是一行寫完一條語句,但如果語句很長,我們可以使用反斜杠(\)來實現多行語句,例如:

total = 'abc' + \
       'def' + \
       'lmn'

(2)在 [], {}, 或 () 中的多行語句,不需要使用反斜杠(\),例如:

total = ['a', 'b', 'c',
        'd', 'e'

 4.字符串與數字拼接

先用內置函數str()把數字轉成字符

 5.長字符串

使用兩對 三引號 

a='''你好
     今年天氣不錯'''
print(a)

也可以原樣輸出單引號和雙引號,轉義字符可以發揮轉義效果。

 6.原樣輸出字符串 r'' 

使轉義功能失效,原樣輸出字符

 

 三、格式化字符串

指定要設置其格式的值時,可使用單個值(如字符串或數字),可使用元組(如果要設置多個值的格式),還可使用字典 

最常用的是元組

1.使用類似C語言的格式化

%s是轉換說明符, s代表字符串,如果值不是字符串,將會把其轉成字符串

>>> format="hello, %s ni %s"
>>> values=('world','hao')
>>> format%values
'hello, world ni hao'

%.3f的意思是包含三位小數的浮點數,多於三位將舍去

>>> a='%.3f'
>>> b=1.888
>>> a%b
'1.888'
>>> c='%.3f'
>>> d=1.8888
>>> a%b
'1.888'

 

 

2.快捷方法f

直接輸出變量名

>>> a=30
>>> f"wide is {a}"
'wide is 30'

3.使用字符串方法format 

需要按順序

>>> "Hello,{} ni {}".format("world","hao")
'Hello,world ni hao'

無需按順序

>>> "Hello,{1} ni {0}".format("hao","world")
'Hello,world ni hao'

 自定義

>>> "{name} is {value:.2f}.".format(value=1.666, name="wide")
'wide is 1.67.'

4.模板字符串。類似於UNIX shell的語法

>>> from string import Template
>>> str1 = Template("Hello, $who ni $what ?")
>>> str1.substitute(who="ni", what="hao")
'Hello, ni ni hao ?'

 

 四、截取字符串

print str[0:3] #截取第一位到第三位的字符

print str[:] #截取字符串的全部字符
print str[6:] #截取第七個字符到結尾
print str[:-3] #截取從頭開始到倒數第三個字符之前
print str[2] #截取第三個字符
print str[-1] #截取倒數第一個字符
print str[::-1] #創造一個與原字符串順序相反的字符串
print str[-3:-1] #截取倒數第三位與倒數第一位之前的字符
print str[-3:] #截取倒數第三位到結尾
print str[:-5:-3] #逆序截取,具體啥意思沒搞明白?

 

五、字節、字符串互轉

1.字符串轉字節

調用 bytes方法將字符串轉成字節

或者用字符串內置方法encode

2.字節轉成字符串

 

 

七、字符串常用方法

常用方法

 1.center()

 在字符串兩端添加字符,一個參數時,默認添加空格。參數1是總的長度,為單數時優先在字符串左側添加。

參數2指定要填充的字符(只能是一個字符)

>>> 'ni hao'.center(20,'*')
'*******ni hao*******'

2、find方法

>>> 'haabcmenabc '.find('abc')
2

如果找到返回子串所在位置的最左端索引,如果未找到返回-1

 3、join方法

>>> str1 = ['1', '2', '3', '4', '5']
>>> str2='a'
>>> str2.join(str1)
'1a2a3a4a5'

用str2把str1連接起來,str1和str2必須都是字符串

 4.lower ()

變成小寫

>>> 'AbC'.lower()
'abc'

5.replace()

方法replace將指定子串都替換為另一個字符串,並返回替換后的結果

>>> 'This is a test'.replace('is', 'eez')
'Theez eez a test'

6.split ()

其作用與join相反,用於將字符串拆分為序列

如果沒有指定分隔符,將默認在單個或多個連續的空白字符(空格、制表符、換行符
等)處進行拆分

>>> '1+2+3+4+5'.split('+')
['1', '2', '3', '4', '5']
>>> '/usr/bin/env'.split('/')
['', 'usr', 'bin', 'env']
>>> 'Using the default'.split()
['Using', 'the', 'default']

7.strip()

方法strip將字符串開頭和末尾的空白(但不包括中間的空白)刪除,並返回刪除后的結果。

>>> '  abc  '.strip()
'abc'

 

八、獲取用戶輸入

input()函數

 input默認得到字符串,需要轉成int類型

 input 和 raw_input

1、raw_input會把所有輸入的類型全部轉成字符串類型。

 2、input 可以輸入數字或字符串。輸入數字會得到對應的整數類型和小數類型。輸入字符串時要加引號否則會報錯

 

九、print打印

 

連續打印多個表達式 ,用逗號隔開

 打印一個帶逗號的字符串

 

自定義分隔符, seq

>>> print('a','b','c','d',sep='*')
a*b*c*d

自定義結束字符串,end

>>> print('a','b');print('c');
a b
c
>>> print('a','b',end='!');print('c'); a b!c

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM