python学习笔记2

01字符串编码

ord()和chr()函数

python 3中字符串是以Unicode编码实现,对单个字符,可以使用ord()函数获取字符的完整表示,chr()函数把编码转为对应的字符:

>>> print('包含中文的str')
		      
包含中文的str
>>> ord('A')		      
65
>>> ord('中')		      
20013
>>> chr(66)
		      
'B'
>>> chr(20091)
		      
'乻'
>>> chr(20089)
		      
'乹'
>>> chr(20099)		  

len()函数计算str字符数

也可以计算bytes的字节数(python字符串类型是str,在内存中是Unicode表示,在网络中传输,或者保存到磁盘上就需要变为以字节为单位的bytes)
python对bytes类型的数据用带b前缀的单引号或双引号表示。
x=b’ABC’

>>> len(b'ABC')		      
3
>>> len('中文')		      
2

编码encode()方法和解码decode()方法

以Unicode表示的str通过encode()方法可以编码为指定的bytes
反过来,如果从网络或磁盘上读取了字节流,那么读到的数据就是bytes此时要用decode()方法解码。

>>> '中文'.encode("utf-8")
	      
b'\xe4\xb8\xad\xe6\x96\x87'
>>> b'\xe4\xb8\xad\xe6\x96\x87'.decode("utf-8")		      
'中文'

保存源代码

#!/usr/bin/env python3
#-*- coding: utf-8 -*-

第一行是为了告诉Linux/os X系统,这是一个python可执行程序,Windows会忽略这个注释
第二行是为了告诉python编译器,按照utf-8编码读取源代码,否则,你在源代码中写的中文可能会出现乱码。

占位符

%nd表示输出占n位,不够右端补齐,%0nd表示输出占n2位,不够补0。
如果字符中需要%,则用%%转义表示%

02 list和tuple(列表和元组)

列表可以随时添加和删除元素

元组一旦初始化就不能修改,因为tuple不可变,所以代码更安全。如果可能能用tuple代替list就尽量用tuple。(tuple的不可变指的是tuple中元素的指向永远不变)

>>> t = ('a', 'b', ['A', 'B'])
>>> t[2][0] = 'X'
>>> t[2][1] = 'Y'
>>> t
('a', 'b', ['X', 'Y'])

上面代码看起来元组里面的元素变了,实际上变得是里面列表list的元素。

03 循环

Python的循环有两种,一种是for…in循环,依次把list或tuple中的每个元素迭代出来

names = ['Michael', 'Bob', 'Tracy']
for name in names:
    print(name)

如果要计算1-100的整数之和,从1写到100有点困难,幸好Python提供一个range()函数,可以生成一个整数序列,再通过list()函数可以转换为list。比如range(5)生成的序列是从0开始小于5的整数(0,1,2,3,4),注意不包括5:

sum = 0
for x in range(101):
    sum = sum + x
print(sum)

第二种循环是while循环,只要条件满足,就不断循环,条件不满足时退出循环。比如我们要计算100以内所有奇数之和,可以用while循环实现:

sum = 0
n = 99
while n > 0:
    sum = sum + n
    n = n - 2
print(sum)

break语句可以在循环过程中直接退出循环,而continue语句可以提前结束本轮循环,并直接开始下一轮循环。这两个语句通常都必须配合if语句使用

n=1
while n<=100:
    if n>10:
        break
    print(n)
    n+=1
print("循环结束")
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

站在风口的朱

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值