常見的兩種
第一種:數(shù)值運(yùn)算 1 % 3 是指模運(yùn)算,?取余數(shù)(remainder)
>>> 7%2
1
# -*- coding: utf-8 -*- ''' python讀取文件,偶數(shù)行輸出一個(gè)文件,奇數(shù)行輸出一個(gè)文件 ''' def fenhang(infile,outfile,outfile1): infopen = open(infile,'r',encoding='utf-8') outopen = open(outfile,'w',encoding='utf-8') outopen1 = open(outfile1, 'w', encoding='utf-8') lines = infopen.readlines() i = 0 for line in lines: i += 1 if i % 2 == 0: outopen.write(line) else: outopen1.write(line) infopen.close() outopen.close() fenhang("源文件路徑","偶行數(shù)文件路徑","奇行數(shù)文件路徑")
具體的可以參考這篇文章://www.jb51.net/article/136704.htm
第二種:字符串操作 'abc %s' % 'abc' '%s'類似占位符 這行代碼的結(jié)果
?問的是%操作符(字符串格式化,string formatting),說明如下:
%[(name)][flags][width].[precision]typecode
(name)為命名
flags可以有+,-,' '或0。+表示右對(duì)齊。-表示左對(duì)齊。' '為一個(gè)空格,表示在正數(shù)的左側(cè)填充一個(gè)空格,從而與負(fù)數(shù)對(duì)齊。0表示使用0填充。
width表示顯示寬度
precision表示小數(shù)點(diǎn)后精度
以下是類型碼
%s??? 字符串 (采用str()的顯示)
%r??? 字符串 (采用repr()的顯示)
%c??? 單個(gè)字符
%b??? 二進(jìn)制整數(shù)
%d??? 十進(jìn)制整數(shù)
%i??? 十進(jìn)制整數(shù)
%o??? 八進(jìn)制整數(shù)
%x??? 十六進(jìn)制整數(shù)
%e??? 指數(shù) (基底寫為e)
%E??? 指數(shù) (基底寫為E)
%f??? 浮點(diǎn)數(shù)
%F??? 浮點(diǎn)數(shù),與上相同%g??? 指數(shù)(e)或浮點(diǎn)數(shù) (根據(jù)顯示長度)
%G??? 指數(shù)(E)或浮點(diǎn)數(shù) (根據(jù)顯示長度)
%%??? 字符"%"
舉例
>>> print("%6.3f" % 2.3) 2.300
# 第一個(gè)"%"后面的內(nèi)容為顯示的格式說明,6為顯示寬度,3為小數(shù)點(diǎn)位數(shù),f為浮點(diǎn)數(shù)類型
# 第二個(gè)"%"后面為顯示的內(nèi)容來源,輸出結(jié)果右對(duì)齊,2.300長度為5,故前面有一空格
>>> print("%+10x" % 10) +a
# x為表示16進(jìn)制,顯示寬度為10,前面有8個(gè)空格
>>>print("%-5x" % -10) -a
#? "%-5x" 負(fù)號(hào)為左對(duì)齊,顯示寬度為5,故-a后面有3個(gè)空格
>>>pi=3.1415 >>>print ("pi的值是%s"%pi)
pi的值是3.1415
>>>print ("pi的值是%.8f"%pi) pi的值是3.14150000
上面的width, precision為兩個(gè)整數(shù)。我們可以利用*,來動(dòng)態(tài)代入這兩個(gè)量。比如:
>>> print("%10.*f" % (4, 1.2)) 1.2000
以下是補(bǔ)充
簡單的說,這是一種將其他變量置入字符串特定位置以生成新字符串的操作,比如說:
n = "Aki" "My name is %s" % n
這段代碼首先定義了一個(gè)名為n的變量,內(nèi)容為Aki。然后下方的字符串中有一個(gè)%s,他的含義是“這里將被替換成一個(gè)新的字符串”,用作替換的內(nèi)容放在字符串后面的%后面,就是那個(gè)n。所以最終這個(gè)字符串會(huì)變成 My name is Aki 。
字符串中的%后面會(huì)附帶一個(gè)字母,代表著用來替換的變量的類型,比如說%d代表著你將替換到此處的變量是一個(gè)整數(shù),而%s代表著一個(gè)字符串。詳細(xì)細(xì)節(jié)可在這里看到。https://docs.python.org/2/library/stdtypes.html#string-formatting-operations另外,這種操作可以同時(shí)將多個(gè)變量放進(jìn)字符串,只需要用括號(hào)把變量們括起來。下面是一些例子。
>>> "www.%s.net" %("jb51")#字符串 'www.jb51.net' >>> "%dkm"%1990#整數(shù)型 '1990km' >>> "%s %d %f"%("abc",123,3.21)#多個(gè)值 'abc 123 3.210000'
在python3中
# -*- coding: UTF-8 -*- print("www.%s.net") %("jb51")
輸出 www.jb51.net
?python中的%s%是什么意思
它是一個(gè)字符串格式化語法(它從C借用)。
請參閱 “格式化字符串”:
Python支持將值格式化為字符串。雖然這可以包括非常復(fù)雜的表達(dá)式,但最基本的用法是將值插入到%s 占位符的字符串中 。
編輯: 這是一個(gè)非常簡單的例子:
該 %s 令牌允許我插入(和潛在的格式)的字符串。請注意, %s 令牌被替換為% 符號(hào)后傳遞給字符串的任何內(nèi)容 。還要注意,我也在這里使用一個(gè)元組(當(dāng)你只有一個(gè)使用元組的字符串是可選的)來說明可以在一個(gè)語句中插入和格式化多個(gè)字符串。
只是為了幫助您更多,以下是您如何在一個(gè)字符串中使用多種格式
如果您使用int而不是字符串,請使用%d而不是%s。
更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號(hào)聯(lián)系: 360901061
您的支持是博主寫作最大的動(dòng)力,如果您喜歡我的文章,感覺我的文章對(duì)您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點(diǎn)擊下面給點(diǎn)支持吧,站長非常感激您!手機(jī)微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點(diǎn)擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對(duì)您有幫助就好】元
