python入门基础小知识(二)

几种字符串编码格式之间大概的区别

1)ASCII:最早的编码是ASCII,仅对10个数字,26个大写26个小写英文字母还有一些其它符号进行了编码,用一个字节对字符进行编码,最多只能表示256个符号。

2)GB2312:我国制定的中文编码,通常用一个字节表示一个英文字符,两个字节表示一个中文字符。

3)GBK:对GB2312的扩充,加入了更多的汉字能表示21003个汉字,它的编码与GB2312是兼容的。遵常用一个字节表示一个英文字符,两个字节表示一个中文字。

4)CP936:微软在GBK的基础上开发的编码方式,都是用两个字节表示一个中文字符。

5)UTF-8:典型的字符串编码有UTF-8,它对全世界所有国家用到的字符进行编码,用一个字节表示一个英文字符,用三个字节表示一个汉字。

6)UNICODE:ord()和chr()是把单个字符变成对应的UNICODE码或者变为对应的字符。

7)还有一种表示方式叫做字节串,即bytes类型,用函数encode(‘utf-8或gbk’)和decode(‘utf-8或gbk’)能够将字符编码或解码为字符

字符串格式化的方式

1)str.format:用法一 : 'hello {0}'.format(name) ;用法二:"my name is {name}".format(name=Lily) 

2)f-string:name='Lily' f"my name is {name}" 

3)字符串模板(Template):from string import Templatet = Template('Hey, $name!') t.substitute(name=’Lily’)

常用的字符串方法

1) charAt() 返回指定索引位置的字符;
例:var str='hello'; console.log(str.charAt(4));
2) concat() 连接两个或多个字符串,返回连接后的字符串(拼接);
例:var str='hello'; var s1=str.concat(s,s,s,s); console.log(s1);
3) indexOf() 返回字符串中检索指定字符第一次出现的位置,找不到返回-1;
例:var str='hello'; var index=str.indexOf('l'); console.log(index);
4) lastIndexOf() 返回字符串中检索指定字符最后一次出现的位置;
例:var str='hello'; var index=str.lastIndexOf('l'); console.log(index);

正则表达式应用场合

快速分析大量文本,以找到特定的字符模式验证文本以确保匹配预定义模式提取编辑替换过删除文本子字符串随着时间变化的文本,如时间显示多语言适配问题,可将多种语言字符串写成一个UI对象多种不同的字符显示情况,如定制机,移动要求显示一种,联通又要求显示为另一种字符串处理利器,字符串的匹配查找,替代,拆分,萃取。

读写文件内容时可能会出现的异常

如果open函数指定的文件不存在,访问权限不够,磁盘空间不够或其他原因导致创建文件失败时就会引发异常状况导致程序崩溃,需要用python的try + 代码块+except+finally的模式来处理异常。可以使用多个except来指定可能引发的异常错误,最后加上finall代码块来关闭打开的文件,释放掉程序中获取的外部资源,由于finally块的代码不论程序正常还是异常都会执行到,因此我们通常把finally块称为总是执行代码块,它最适合用来做释放外部资源的操作。如果不愿意在finally代码块中关闭文件对象释放资源,也可以使用上下文语法,通过with关键字指定文件对象的上下文环境并在离开上下文环境时自动释放文件资源。

文件不同打开模式之间的区别

1)r 以只读方式打开文件。文件的指针将会放在文件的开头。这是默认模式。

2)rb 以二进制格式打开一个文件用于只读。文件指针将会放在文件的开头。这是默认模式。

3)r+ 打开一个文件用于读写。文件指针将会放在文件的开头。

4)rb+ 以二进制格式打开一个文件用于读写。文件指针将会放在文件的开头。

5) w 打开一个文件只用于写入。如果该文件已存在则将其覆盖。如果该文件不存在,创建新文件。

6) wb 以二进制格式打开一个文件只用于写入。如果该文件已存在则将其覆盖。如果该文件不存在,创建新文件。

7)w+ 打开一个文件用于读写。如果该文件已存在则将其覆盖。如果该文件不存在,创建新文件。

8)wb+ 以二进制格式打开一个文件用于读写。如果该文件已存在则将其覆盖。如果该文件不存在,创建新文件。

9)a 打开一个文件用于追加。如果该文件已存在,文件指针将会放在文件的结尾,新的内容将会被写入到已有内容之后。如果该文件不存在,创建新文件进行写入。

10)ab 以二进制格式打开一个文件用于追加。如果该文件已存在,文件指针将会放在文件的结尾,,新的内容将会被写入到已有内容之后。如果该文件不存在,创建新文件进行写入。

11)a+ 打开一个文件用于读写。如果该文件已存在,文件指针将会放在文件的结尾。文件打开时会是追加模式。如果该文件不存在,创建新文件用于读写。

12)ab+ 以二进制格式打开一个文件用于追加。如果该文件已存在,文件指针将会放在文件的结尾。如果该文件不存在,创建新文件用于读写。

使用异常处理结构的原因

异常处理是因为程序执行过程中由于输入不合法导致程序出错而在正常控制流之外采取的行为。如果这些错误得不到正确的处理将会导致程序终止执行,而合理地使用异常处理结构可以使得程序更加健壮,具有更强的容错性,不会因为用户不小心的错误输入或其他运行时原因而造成程序终止。也可以使用异常处理结构为用户提供更加有好的提示。例如,除零错误,操作数类型不支持,略去异常的详细信息,变量名不存在,文件不存在,参数类型不匹配等。

Connection对象和Cursor对象的executemany()方法

executemany:批量插入数据时常采用的方法。速度比execute()一条一条插入速度更快 。

connection对象中的executemany:执行多条SQL语句,语句是多条

cursor对象中的executemany:重复执行多次SQL语句,即可以对给定的所有参数执行同一个SQL语句,参数序列可以有多种方式产生,如生成器对象。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值