python中的百分号
2020-10-12
常见的两种第一种:数值运算 1 % 3 是指模运算,取余数(remainder)>>> 7%211234567891011121314151617181920# -*- coding: utf-8 -*-'''python读取文件,偶数行输出一个文件,奇数行输出一个文件'''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 = 0for line in lines:i += 1if i % 2 == 0:outopen.write(line)else:outopen1.write(line)infopen.close()outopen.close()fenhang("源文件路径","偶行数文件路径","奇行数文件路径")具体的可以参考这篇文章:https://www.jb51.net/article/136704.htm第二种:字符串操作 'abc %s' % 'abc' '%s'类似占位符 这行代码的结果问的是%操作符(字符串格式化,string formatting),说明如下:%[(name)][flags][width].[precision]typecode(name)为命名flags可以有+,-,' '或0。+表示右对齐。-表示左对齐。' '为一个空格,表示在正数的左侧填充一个空格,从而与负数对齐。0表示使用0填充。width表示显示宽度precision表示小数点后精度以下是类型码%s 字符串 (采用str()的显示)%r 字符串 (采用repr()的显示)%c 单个字符%b 二进制整数%d 十进制整数%i 十进制整数%o 八进制整数%x 十六进制整数%e 指数 (基底写为e)%E 指数 (基底写为E)%f 浮点数%F 浮点数,与上相同%g 指数(e)或浮点数 (根据显示长度)%G 指数(E)或浮点数 (根据显示长度)%% 字符"%"举例12>>> print("%6.3f" % 2.3)2.300# 第一个"%"后面的内容为显示的格式说明,6为显示宽度,3为小数点位数,f为浮点数类型# 第二个"%"后面为显示的内容来源,输出结果右对齐,2.300长度为5,故前面有一空格12>>> print("%+10x" % 10)+a# x为表示16进制,显示宽度为10,前面有8个空格12>>>print("%-5x" % -10)-a# "%-5x" 负号为左对齐,显示宽度为5,故-a后面有3个空格12>>>pi=3.1415>>>print ("pi的值是%s"%pi)pi的值是3.141512>>>print ("pi的值是%.8f"%pi)pi的值是3.14150000上面的width, precision为两个整数。我们可以利用*,来动态代入这两个量。比如:12>>> print("%10.*f" % (4, 1.2))1.2000以下是补充简单的说,这是一种将其他变量置入字符串特定位置以生成新字符串的操作,比如说:12n = "Aki""My name is %s" % n这段代码首先定义了一个名为n的变量,内容为Aki。然后下方的字符串中有一个%s,他的含义是“这里将被替换成一个新的字符串”,用作替换的内容放在字符串后面的%后面,就是那个n。所以最终这个字符串会变成My name is Aki。字符串中的%后面会附带一个字母,代表着用来替换的变量的类型,比如说%d代表着你将替换到此处的变量是一个整数,而%s代表着一个字符串。详细细节可在这里看到。https://docs.python.org/2/library/stdtypes.html#string-formatting-operations另外,这种操作可以同时将多个变量放进字符串,只需要用括号把变量们括起来。下面是一些例子。12345678>>> "www.%s.net" %("jb51")#字符串'www.jb51.net'>>> "%dkm"%1990#整数型'1990km'>>> "%s %d %f"%("abc",123,3.21)#多个值'abc 123 3.210000'在python3中12# -*- coding: UTF-8 -*-print("www.%s.net") %("jb51")