精华内容
下载资源
问答
  • 老师要求完成一个 统计从键盘输入的字符串各类字符的数量 的程序 我用vs2019编译运行就提示下面这些问题 并且不管输入什么输出结果也只是zmszoth [img=...
  • 第七章 格式化 我们已经学习了大多数的字符串方法的使用,感觉...format方法接受位置参数和关键字参数,二者均传递一个叫做replacement的字段,而这个replacement字段在字符串中由大括号表示,比如下面的例子。 p...

    第七章 格式化

    我们已经学习了大多数的字符串方法的使用,感觉我们已经可以游刃有余的来运用字符串了,但是我们对字符串的一个format方法接触的还不算太多,所以这章我们重点讲解一下字符串格式化方法–format。

    7.1 format方法

    format方法接受位置参数和关键字参数,二者均传递一个叫做replacement的字段,而这个replacement字段在字符串中由大括号表示,比如下面的例子。

    print("{0} have a {1} {2}".format('I','good','brother'))
    

    结果:

    I have a good brother
    

    从上面的例子我们可以看出,format内的三个字符串分别替代了三个位置参数,也就是说,参数的替代默认情况下是和位置有关的。
    那我们上面提到的关键字参数是怎么回事呢,其实也是很简单,看下面的例子。

    print("{a} have a {b} {c}".format(a='I',b='good',c='brother'))
    

    结果:

    I have a good brother
    

    在这里,大括号内的a,b,c就是三个关键字参数,在format内的调用和顺序无关,另外在位置参数中,可以将大括号内的数字省略,也就是说可以只留一个空的大括号。

    print("{}: {}".format("圆周率","3.1415926"))
    

    结果:

    圆周率: 3.1415926
    

    所以结果表明在位置参数不标明位置的情况下,默认按顺序执行。

    7.2 格式化操作符

    我们上面学习了使用format方法进行字符串的格式化,但在python语言中还有其他比较常用的格式化方式,那就是我们接下来要讲的格式化操作符。
    先看一下都有哪些格式化符号吧。

    %c	格式化字符及ASCII码
    %s	格式化字符串
    %d	格式化整数
    %o	格式化无符号八进制数
    %x	格式化无符号十六进制数
    %f	格式化浮点数字,可指定小数点后的精度
    %e	用科学计数法格式化浮点数
    

    下面我们举几个例子以供参考。

    print("%c" %97)
    print("%d" %97.5)
    print("%d转换成八进制是:%o" %(123,123))
    print("%f用科学计数法表示为%e"%(2300000,2300000))
    

    结果:

    a
    97
    123转换成八进制是:173
    2300000.000000用科学计数法表示为2.300000e+06
    

    7.3 python转义字符

    其实本章的内容没有太多的知识点,所以大家了解一下就可以,下面我们再列出转义字符的含义。

    \b	退格符
    \n	换行符
    \t	横向制表符
    \v	纵向制表符
    \r	回车符
    \\	反斜杠
    
    #转义字符:\b
    print("I love \bpython")
    
    输出结果:
    I lovepython
    
    #转义字符:\n
    print("I love \npython")
    
    输出结果:
    I love 
    python
    
    #转义字符:\t
    print("I love \tpython")
    
    输出结果:
    I love 	python
    
    #转义字符:\r
    print("I love \rpython")
    
    输出结果:
    python
    

    #转义字符:\
    print(“I love \python”)

    输出结果:
    I love \python
    ``

    展开全文
  • 在进行js字符串拼接的时候有时候会遇到需要在一段字符串的onclick事件中传递的参数是一个对象的问题,传递之后我们会发现并不是我们想要的结果(主要是不想一个参数一个参数的去写,有时候参数太多就会显得太过臃肿...

    场景

    在进行js字符串拼接的时候有时候会遇到需要在一段字符串的onclick事件中传递的参数是一个对象的问题,传递之后我们会发现并不是我们想要的结果(主要是不想一个参数一个参数的去写,有时候参数太多就会显得太过臃肿)。

    举例

    如下:

    <span onclick="f1([object Object])">点我</span>
    

    可以看到f1()方法内的参数变成了[object Object],这样的参数我们是没办法通过 xx.xx 这种格式进行数据操作的,有一种比较简单粗暴的方式是通过JSON.stringify()方法将json对象直接强制转化为字符串传递给function,但是这样有时候会根据不同浏览器出现不同的错误提示,例如:错误结尾、未正确闭合等各种让人摸不着头脑的问题。

    解决

    这里有两种解决方式

    正则

    如上边所说JSON.stringify()直接转化传递可能会出错,造成这种情况的原因是因为在传递数据的时候单引号和双引号的问题,会把你最外层的引号干掉,所以只需要在数据传递的时候通过正则表达式将内容的中的双引号换成单引号即可

    var htmlDom = '<span οnclick="f1('+ JSON.stringify(obj).replace(/\"/g,"'") +')">点我</span><br>'
    

    临时存储进一个数组(循环)

    既然我们直接传递对象行不通,那么可以考虑先用另一个数组作为临时存储,然后在拼接字符串的时候传递index,click事件触发的时候再从这个存储的数组中进行取用。

    • 这里写了一个简单的json通过jquery获取然后进行循环写入
    {
    	"res":[
    		{
    			"a":"123",
    			"b":"234"
    		},{
    			"a":"1232",
    			"b":"2342"
    		}
    	]
    }
    
    <div id="a1"></div>
    
    <script type="text/javascript">
    	var arr = []; //空数组
    	$.ajax({
    		url: 'test.json',
    		type: 'get',
    		dataType: 'JSON',
    		success: function(data){
    			var htmlDom = '';
    			for(var i=0; i < data.res.length; i++){
    				arr[i] = { //循环取到的对象一个个存进数组
    					'c' : data.res[i].a,
    					'd' : data.res[i].b
    				}
    				htmlDom += '<span οnclick="f1('+i+')">点我</span><br>' //参数为对应的index
    				$('#a1').html(htmlDom)
    			}
    		}
    	})
    	function f1(ind){
    		console.log(arr[ind].c)
    		console.log(arr[ind].d)
    	}
    </script>
    
    展开全文
  • 14.2.6 检查字符串中的字符和文本元素 14.2.7 其他字符串操作 14.3 高效率构造字符串 14.3.1 构造StringBuilder对象 14.3.2 StringBuilder的成员 14.4 获取对象的字符串表示:ToString 14.4.1 指定具体的格式...
  • 14.2.6 检查字符串中的字符和文本元素 14.2.7 其他字符串操作 14.3 高效率构造字符串 14.3.1 构造StringBuilder对象 14.3.2 StringBuilder的成员 14.4 获取对象的字符串表示:ToString 14.4.1 指定具体的格式...
  • 14.2.6 检查字符串中的字符和文本元素 14.2.7 其他字符串操作 14.3 高效率构造字符串 14.3.1 构造StringBuilder对象 14.3.2 StringBuilder的成员 14.4 获取对象的字符串表示:ToString 14.4.1 指定具体的格式...
  • 14.2.6 检查字符串中的字符和文本元素 14.2.7 其他字符串操作 14.3 高效率构造字符串 14.3.1 构造StringBuilder对象 14.3.2 StringBuilder的成员 14.4 获取对象的字符串表示:ToString 14.4.1 指定具体的格式...
  • 在 e:\text 目录下的 rar 压缩文件搜索十六进制字符串 f0 e0 ae ae ab 2d 83 e3 a9。 k 锁定压缩文件。任何试图改变压缩文件的命令都会被忽略。 例子: rar k final.rar l[t,b] 压缩文件的...
  • Ajax-JS

    2015-09-05 10:36:00
    GET请求方式:通过URL地址传递,其传输数据也在URL地址 ,一般是以字符串形式传递接收,安全性相对不高 POST请求方式:通过浏览器内部传输,一般在send()方法前面要添加头文件即setRequestHeader(),数据由...

    Ajax:异步交互传输技术 ----就是用来与后台交互数据用的

    GET请求方式:通过URL地址传递,其传输数据也在URL地址中 ,一般是以字符串形式传递接收,安全性相对不太高

    POST请求方式:通过浏览器内部传输,一般在send()方法前面要添加头文件即setRequestHeader(),数据由send()方法借由参数形式传递,传递数据格式多,安全性相对高点

     

    发送请求(get和post的区别):

    send(要发送的数据):发送请求
    中文编码
    缓存
    POST:setRequestHeader(类型, 内容):设置请求头
    "Content-Type","application/x-www-form-urlencoded”

    数据类型(返回数据的处理):
    服务器返回给咱们的真正数据
    XML、HTML、JSON
    JSON的写法
    Eval解析JSON的时候需要注意的地方
    JSON.parse() : 字符串解析成对象

    后端数据的接收:
    $_GET
    - 通过URL传递给该脚本的变量的数组
    $_POST
    - 通过HTTP POST方法(表单)传递给该脚本的变量的数组
    前后台键名和传输方式必须一致
    数据传输方式
    数据获取方式

            var xhr = null;
            try {
                xhr = new XMLHttpRequest();
            } catch (e) {
                xhr = new ActiveXObject('Microsoft.XMLHTTP');
            }
            
            xhr.open('post','2.post.php',true);
            //post方式,数据放在send()里面作为参数传递
            xhr.setRequestHeader('content-type', 'application/x-www-form-urlencoded');//申明发送的数据类型
            //post没有缓存问题
            //无需编码
            xhr.send('username=刘伟&age=30');
            
            xhr.onreadystatechange = function() {
                
                if ( xhr.readyState == 4 ) {
                    if ( xhr.status == 200 ) {
                        alert( xhr.responseText );
                    } else {
                        alert('出错了,Err:' + xhr.status);
                    }
                }
                
            }

     

    get缓存问题:

    来源:每次都是发送同一个URL地址,发送访问请求后,会有一个缓存,之后还是同样的一个URL地址,这时候,浏览器就会直接去读取缓存,不会再向服务器发送请求

    解决方法:‘2.get.php?username=leo&age=30&’+new Date().getTime();或者加个Math.random()随机函数;在URL问号后面连接一个随机数时间戳

    get传输中文有乱码问题: URL中传输数据,使用编码 encodeURL     ‘2.get.php?username='+encodeURI('刘伟')+'&age=30&’+new Date().getTime();

     

    post方式:

    xhr.setRequestHeader('content-type', 'application/x-www-form-urlencoded');声明数据发送的数据类型

    post方式,数据放在send()里面作为参数传递

    没有中文乱码问题,因为在请求头中已经告诉后台的格式了

     

    转载于:https://www.cnblogs.com/backpacker-lzf/p/4782860.html

    展开全文
  • 本书部分目录如下,太多了,只列出了大部分: 第1篇 求职准备和技巧 第1章 了解面试--通过面试抓住机会 1.1 选择自己的应聘职位范围 1.1.1 针对初级C/C++工程师职位 1.1.2 针对、高级C/C++开发工程师职位 1.1.3 C...
  • VC51中文标识符工具

    2012-08-01 11:18:44
    commandfile是keil在编译前临时生成的文件,其内容就是真正要传递给c51的编译参数。c51处理结束后,把结果返回。我们就能看到编译是否成功,如果有错误,错误是出在哪了。是不是看着有点乱呢?还是举例吧。比如我们...
  • ◆怎样才能在VC里产生一个唯一的字符串◆ 31 ◆如何隐藏进程(在系统状态栏和进程列表里不可见)◆ 31 ◆如何得到一个确定大小的视?◆ 31 ◆如何实现点击窗口任意地方拖动窗口?◆ 32 ◆如何在启动时阻止MDI应用程序...
  • 4.9 能否用void**通用指针作为参数,使函数模拟按引用传递参数?  4.10 我有一个函数externintf(int*);,它接受指向int型的指针。我怎样用引用方式传入一个常数?调用f(&5);似乎不行。  4.11 C语言可以“按引用...
  • 21天学通C++ (中文第五版)

    热门讨论 2010-06-23 16:57:03
    没有行号的代码行是前一行的续行(有些代码行长,无法在一行列出)。这种情况下,应将两行作为一行输入,不能将它们分开。 本书正文及附录D的范例代码可从Sams网站下载, 其网址为...
  • P9110.1.4 字符串字符串数组,以及程序参数 P9210.2.1 字符串函数:单字符输入输出 P9310.2.2 字符串函数:字符串函数strlen P9410.2.3 字符串函数:字符串函数strcmp P9510.2.4 字符串函数:字符串函数strcpy P...
  • 10.3.3 输入格式字符串中的字符 377 10.3.4 输入浮点数的各种变化 378 10.3.5 读取十六进制和八进制值 379 10.3.6 用scanf()读取字符 381 10.3.7 scanf()的陷阱 383 10.3.8 从键盘上输入字符串 383 10.3.9 ...
  • expr 是一个字符串;它可以以一个 “-” 领头表示一个负的间隔值。type 是一个关键词,它标志着表达式以何格式被解释。 下表显示 type 和 expr 参数是如何关联的:  type 值 expr 期望的格式 SECOND ...
  • 7.4 使用*匹配字符串中的单字符或其重复 序列 51 7.5 使用\屏蔽一个特殊字符的含义 52 7.6 使用[]匹配一个范围或集合 52 7.7 使用\{\}匹配模式结果出现的次数 53 7.8 小结 55 第8章 grep家族 56 8.1 grep 57 8.1.1 ...
  • 7.4 使用*匹配字符串中的单字符或其重复 序列 51 7.5 使用\屏蔽一个特殊字符的含义 52 7.6 使用[]匹配一个范围或集合 52 7.7 使用\{\}匹配模式结果出现的次数 53 7.8 小结 55 第8章 grep家族 56 8.1 grep 57 8.1.1 ...
  • rar压缩软件.rar

    2016-02-13 10:52:44
    RAR 将使用这个字符串作为命令行的默认参数,并将使用 1024KB 字典大小来创建 “固实”压缩文件。 RAR 控制选项使用下列优先级: 命名行开关 最高优先级 在 RAR 变量的开关 低优先级 保存在配置文件的...
  • 597:二元运算符的可以用法,这些用法可能在语句造成混淆 598:位移运算符位移过度 599:无法打开匹配通配符名称的文件 608:试图给作为参数的数组赋值 609:可疑的指针赋值转换(指针类型不一致) ...
  • 3.4.2 在一个直接量字符串中嵌入单引号 3.4.3 数字直接量 3.4.4 布尔直接量 3.5 分号分隔符 3.6 注释 3.6.1 单行注释语法 3.6.2 多行注释语法 3.7 PRAGMA关键字 3.8 标签 第2部分 PL/SQL程序结构 第4章 ...
  • WinRAR_4.0.exe

    2011-02-04 11:34:33
    RAR 将使用这个字符串作为命令行的默认参数,并将使用 1024KB 字典大小来创建 “固实”压缩文件。 RAR 控制选项使用下列优先级: 命名行开关 最高优先级 在 RAR 变量的开关 低优先级 保存在配置文件的...
  • 它不会介绍太多细节,而会重点介绍对所有 C++ 程序都通用的一般概念。 第 2 章:数据类型和运算符简介 编程语言的核心在于其数据类型和运算符。不出您所料,C++ 支持大量数据类型和运算符,使其适合的编程范围非常...
  • 你必须知道的495个C语言问题

    千次下载 热门讨论 2015-05-08 11:09:25
    4.9 能否用void**通用指针作为参数,使函数模拟按引用传递参数? 4.10 我有一个函数externintf(int*);,它接受指向int型的指针。我怎样用引用方式传入一个常数?调用f(&5);似乎不行。 4.11 C语言可以“按引用...
  • previous up contents next C 语言常见问题集 原著:Steve Summit 翻译:朱群英, 孙 云 修订版 0.9.4, 2005年6月23日... o 8.6 我有个函数, 本该返回一个字符串, 但当它返回调用者的时候, 返回串却是垃圾信息。 ...

空空如也

空空如也

1 2 3 4 5
收藏数 93
精华内容 37
关键字:

格式字符串中传递参数太多