18.07.04

一.编码

1.ASCII  8位(bit) 1个字节  最多有256个位置,包含英文字母大小写.数字.标点等特殊符号.

2.国标码 GBK 16位(bit) 2个字节 包含大部分常用的汉字.

3.万国码 Unicode 32位(bit) 4个字节

4.utf-8 :    英文  8位(bit) 1个字节

                欧洲文字  16bit  2个字节

                中文   24bit 3个字节

8bit=1byte    1byte=1kb   1024kb=1mb   1024mb=1GB   1024GB=1TB

1024TB=1PB  1024PB=1EB  1024EB=1ZB  1024ZB=1YB  1024YB=1NB

二.数据类型

1.int 整数  bit_length()求二进制长度   

例   

a=27
print(a.bit_length())

2.str  字符串     存储少量数据

3.bool  布尔

4.list  列表    例:["123","abc",]

5.tupe  元组  只读列表,不能改.

6.dict  字典  一对一对的存储数据  key:value   

7.set  集合  存储不重复的内容,保存大量内容.

bool类型:

取值只有True或False.bool值没有操作

字符串转换:

例:

i=2
s=str(i) 总结:转换成...就有...把目标括起来
print(type(s)) ==<class'str'>

例:

b=False
c=int(b)
print(c) ==<0> True=1 False=0

例:

s=""
if s:
print("123")
else:
print("abc") ==<abc> 空字符表示False,非空字符表示True.

例:

m=None
if m:
print("a")
else:
print("b") ==<b> 空的都是False,非空都是True

字符串str:

索引就是下标,切记,下标是从0开始.

例:

s="我爱吃东西."
print(s[4]) ==<西>
print(s[-1])     ==<.>
通过索引获取到的内容. 还是一个字符串
切片可以对字符串进行截取
语法 s[起始位置: 结束位置]
特点:顾头不顾腚

例:

s="我爱吃东西."
s1 = s[2:5]
print(s1) ==<吃东西>

例:

s="我爱吃东西."
s3 = s[3:] # 默认到结尾
print(s3) ==<东西.>

例:

s="我爱吃东西."
s4 = s[:3] # 从头开始
print(s4) ==<我爱吃>
s5 = s[:] # 从头到尾都切出来
print(s5) ==<我爱吃东西.>

例:

s="我爱吃东西."
s6 = s[-2:] # 从-2 切到结尾 默认从左往右切
print(s6) ==<西.>
步长:
语法:s[起始位置: 结束位置: 步长]

例:

s = "我是梅西,我很慌"
s1 = s[1:5:2] # 从1开始, 到5结束, 每2个取1个
print(s1) ==<是西>

例:

s = "我是梅西,我很慌"
s2 = s[::3]
print(s2) ==<我西很>
s3 = s[6:2:-2] # - 表示反着来. 每两个取1个
print(s3) ==<很,>

大小写相关操作

capitalize()  ==首字母大小写

例:

s = "alex and wusir and taibai"
s1 = s.capitalize() # 首字母大写
print(s) # 原字符串不变 ==<alex and wusir and taibai>
print(s1) ==<Alex and wusir and taibai>

upper()==全部大写        lower()==全部小写

例:

s = "Alex is not a Good Man. "
print(s.upper()) ==<ALEX IS NOT A GOOD MAN.>
print(s.lower()) ==<alex is not a good man.>

strip()==去掉两端指定字符,中间去不掉.

例:

s = "*******呵a呵呵呵****************"
print(s.strip("*")) ==<呵a呵呵呵>

例:

username = input("用户名:").strip()    # 去掉空格.
password = input("密码:").strip() # 去掉空格
if username == 'abc' and password == '123':
print("登录成功")
else:
print("登录失败")

replase 替换

例:

s = "alex wusir alex sb taibai"
s1 = s.replace("alex", "晓雪") # 原字符串不变
print(s1) ==<晓雪 wusir 晓雪 sb taibai>
# 去掉上述字符串中的所有空格
s2 = s.replace(" ", "")
print(s2) ==<alexwusiralexsbtaibai>
s3 = s.replace("alex", "sb", 1)
print(s3) ==<sb wusir alex sb taibai>

split 切割=刀    切割符左右两边都会出现''空字符.

例:

s = "alex_wuse_taibai_bubai"
lst = s.split("_taibai_") # 刀是_ 切完的东西是列表. 列表装的是字符串
print(lst) ==<['alex_wuse', 'bubai']>

format 格式化

例:

s = "我叫{}, 我今年{}岁了, 我喜欢{}".format("abc", 123, "456")
print(s) ==<我叫abc, 我今年123岁了, 我喜欢456>
# 可以指定位置
s = "我叫{1}, 我今年{0}岁了, 我喜欢{2}".format("abc", 18, "456")
print(s) ==<我叫18, 我今年abc岁了, 我喜欢456>
s = "我叫{name}, 我今年{age}岁了, 我喜欢{mingxing}".format(name="abc", mingxing="456", age=123)
print(s) ==<我叫abc, 我今年123岁了, 我喜欢456>

startswith  判断字符开头是否以...开头

例:

s = "abc喜欢123,不喜欢abc"

print(s.startswith("abc")) # 判断字符串是否以xxx开头 ==<Ture>
print(s.endswith("456")) # 判断字符串是否以xxx结尾 ==<Flase>
print(s.count("456")) # 计算xxx在字符串中出现的次数 ==<0>
print(s.find("abc", 3)) # 计算xxx字符串在原字符串中出现的位置, 如果没出现返回 ==<12>
print(s.index("456")) # index中的内容如果不存在. 直接报错

len()  求字符串的长度

例:

s = "你今天喝酒了么"
i = len(s) # print() input() len() python的内置函数
print(i) ==<7>
i = s.__len__() # 也可以求长度 len()函数执行的时候实际执行的就是它
print(i) ==<7>

三.遍历

1.使用while进行遍历

例:

s = "晓雪老师.你好漂亮"
print(len(s)) # 长度是:8 索引到7 ==<9>
count = 0
while count < len(s):
print(s[count])
count = count + 1
==<晓



.



亮>

2.使用for进行遍历   

优势:简单
劣势:没有索引

例:

s = "晓雪老师.你好漂亮"
for c in s: # 把s中的每一个字符交给前面的c 循环
print(c)
==<晓



.



亮>

语法:

for 变量 in 可迭代对象:

         循环体

猜你喜欢

转载自www.cnblogs.com/gxj742/p/9264651.html