Python中%是什么意思?python中百分号如何使用? |
您所在的位置:网站首页 › phyon爬虫啥意思 › Python中%是什么意思?python中百分号如何使用? |
最近在学习python过程中,发现了%的一些情况,这里就简单介绍一下,,需要的朋友可以参考下 常见的两种 第一种:数值运算 1 % 3 是指模运算, 取余数(remainder) >>> 7%2 1python奇偶行分开存储实现代码 这篇文章主要介绍了python读取文件,偶数行输出一个文件,奇数行输出一个文件,需要的朋友可以参考下 例子: 1:www.jb51.net 2:www.jb51.net 3:www.jb51.net 4:www.jb51.net 5:www.jb51.net 6:www.jb51.net 7:www.jb51.net 8:www.jb51.net 9:www.jb51.net 10:www.jb51.net 11:www.jb51.net 12:www.jb51.net 13:www.jb51.net 14:www.jb51.net 15:www.jb51.net 16:www.jb51.netpython函数代码 # -*- 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 = 0 for line in lines: i += 1 if i % 2 == 0: outopen.write(line) else: outopen1.write(line) infopen.close() outopen.close() fenhang("jb51.txt", "oushu.txt", "jishu.txt")效果图 第二种:字符串操作 '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)或浮点数 (根据显示长度) %% 字符"%" ---------------------------------------------------------------------------------------------------------------------------------------------------------------------- 举例 >>> print("%6.3f" % 2.3) 2.300 print("%15.3f" % 2.3) # 第一个"%"后面的内容为显示的格式说明,6为显示宽度,3为小数点位数,f为浮点数类型 # 第二个"%"后面为显示的内容来源,输出结果右对齐,2.300长度为5,故前面有一空格# 第一个"%"后面的内容为显示的格式说明,6为显示宽度,3为小数点位数,f为浮点数类型 # 第二个"%"后面为显示的内容来源,输出结果右对齐,2.300长度为5,故前面有一空格 2.300 >>> print("%+10x" % 10) +a# x为表示16进制,显示宽度为10,前面有8个空格 >>>print("%-5x" % -10) -a# "%-5x" 负号为左对齐,显示宽度为5,故-a后面有3个空格 >>>pi=3.1415 >>>print ("pi的值是%s"%pi)pi的值是3.1415 >>>print ("pi的值是%.8f"%pi) pi的值是3.14150000上面的width, precision为两个整数。我们可以利用*,来动态代入这两个量。比如: >>> print("%10.*f" % (4, 1.2)) 1.2000以下是补充 简单的说,这是一种将其他变量置入字符串特定位置以生成新字符串的操作,比如说: n = "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另外,这种操作可以同时将多个变量放进字符串,只需要用括号把变量们括起来。下面是一些例子。 >>> "www.%s.net" %("jb51")#字符串 'www.jb51.net' >>> "%dkm"%1990#整数型 '1990km' >>> "%s %d %f"%("abc",123,3.21)#多个值 'abc 123 3.210000'在python3中 # -*- coding: UTF-8 -*- print("www.%s.net") %("jb51")输出 www.jb51.net 它是一个字符串格式化语法(它从C借用)。 请参阅 “格式化字符串”: Python支持将值格式化为字符串。虽然这可以包括非常复杂的表达式,但最基本的用法是将值插入到%s 占位符的字符串中 。 编辑: 这是一个非常简单的例子: 该 %s 令牌允许我插入(和潜在的格式)的字符串。请注意, %s 令牌被替换为% 符号后传递给字符串的任何内容 。还要注意,我也在这里使用一个元组(当你只有一个使用元组的字符串是可选的)来说明可以在一个语句中插入和格式化多个字符串。 只是为了帮助您更多,以下是您如何在一个字符串中使用多种格式 如果您使用int而不是字符串,请使用%d而不是%s。
|
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |