字符串和编码
# str,bytes是基本数据类型,python3默认utf-8编码
# bytes数据自带b前缀
print(type("你好"))
print(type(b'abc'))
# encode是编码格式,decode是解码格式
print("你好".encode('utf-8'))
print(b'abc'.decode('utf-8'))
<class 'str'>
<class 'bytes'>
b'\xe4\xbd\xa0\xe5\xa5\xbd'
abc
#encode和decode用于字符和字节的转换
# 内置函数len()查看字符串长度
print(len('你好'))
#python字符格式化输出和c一样,在字符串内部,%s表示用字符串替换,%d表示用整数替换,%运算符就是用来格式化字符串的。
print('你好%s,你的积分为%d'%("zhansgan",50))
"""
%d 整数
%f 浮点数
%s 字符串
%x 十六进制整数
"""
2
你好zhansgan,你的积分为50
'\n%d\t整数\n%f\t浮点数\n%s\t字符串\n%x\t十六进制整数\n'
#format格式化字符串
#format()方法,会用传入的参数依次替换字符串内的占位符{0}、{1}...
print('你好{0},你的积分是{1}'.format('zhangsan',50))
你好zhangsan,你的积分是50
# f-string方法替换变量
#使用以f开头的字符串,称之为f-string,它和普通字符串不同之处在于,字符串如果包含{xxx},就会以对应的变量替换
name='zhansan'
score=50
print('你好,{name}你的积分是{score}')
# f-string
print(f'你好,{name}你的积分是{score}')
你好,{name}你的积分是{score}
你好,zhansan你的积分是50
字符常用函数
- 默认去除空白字符
删除首尾字符:str.strip()
删除首字符:str.lstrip()
删除尾字符:str.rstrip()
- 判断是否匹配首末字符
匹配成功返回True,否则返回False
匹配首字符:str.startswith(char)
匹配末字符:str.endswith(char)
- 查找字符,找到返回字符位置,否则返回-1
字符串查找:str.find(char)
- 分解字符
分割字符:str.split([sep)
- 连接字符
str.join(iterable)
,“str”是连接字符,“iterable”是被连接的可迭代字符串
最原始的字符串连接方式:str1 + str2
python 新字符串连接语法:str1, str2
- 替换字符
str.replace(old, new)
,返回替换后的字符串,默认所有的字符都被替换
- 按换行符分解字符串,返回行列表
str.splitlines([keepends])
,结果不保留换行符,除非keepends为True。
- 大小写转换
大小写互换:str.swapace()
转换为大写:str.upper()
转换为小写:str.lower()
分支与循环
# 分支是if,elif,else代码块遵循缩进规则
a=input()
score=int(a)
if score < 60:
print("fail")
elif 60 <= score <80:
print("pass")
elif 80<= score <=90:
print("good")
else:
print("great")
70
pass
'''
if <条件判断1>:
<执行1>
elif <条件判断2>:
<执行2>
elif <条件判断3>:
<执行3>
else:
<执行4>
'''
# for 循环
# for x in ...循环就是把每个元素代入变量x,然后执行缩进块的语句。
for var in range(1,5):
print(var,end=",")
1,2,3,4,
# while循环
#条件满足,就循环,条件不满足时退出循环
index=5
while index>=1:
print(index,end=" ")
index=index-1
5 4 3 2 1
'''
break语句可以在循环过程中直接退出循环,而continue语句可以提前结束本轮循环
'''
集合
list
# list [] 是一种有序的集合,可以随时添加和删除其中的元素
user_lists=['zhansan','lihua','xiaoming']
print(user_lists)
# 内置len()查看长度,下标访问,切片截取片段
print('长度:',len(user_lists))
print(user_lists[0])
print(user_lists[0:2])
['zhansan', 'lihua', 'xiaoming']
长度: 3
zhansan
['zhansan', 'lihua']
# append(value)追加,
# insert(index,value)插入,
# pop()删除末尾,
# pop(index)删除指定位置,
# remove(value)删除指定元素
# 下标替换
numbers=[1,2,3,4,5,6,7,8,9]
print("元数据",numbers)
numbers.append(10)
print("追加,",numbers)
numbers.insert(0,11)
print("插入,",numbers)
numbers.pop()
print("尾部删除",numbers)
numbers.pop(5)
print("索引删除",numbers)
numbers[6]="number"
print("替换",numbers)
numbers.remove("number")
print("元素删除",numbers)
元数据 [1, 2, 3, 4, 5, 6, 7, 8, 9]
追加, [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
插入, [11, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
尾部删除 [11, 1, 2, 3, 4, 5, 6, 7, 8, 9]
索引删除 [11, 1, 2, 3, 4, 6, 7, 8, 9]
替换 [11, 1, 2, 3, 4, 6, 'number', 8, 9]
元素删除 [11, 1, 2, 3, 4, 6, 8, 9]
list.extend(list)
方法将参数集合的所有元素添加要新集合:a.extend(b)
list.index(x)
方法返回链表中第一个值为 x 的元素的索引。如果没有匹配的元素就会返回一个错误。
“list.count(x)返回 x 在链表中出现的次数。
list.sort()对链表中的元素就地进行排序。
list.reverse()“`倒叙列表中的元素。
元组
# tuple () 是list的特殊形式,初始化后就不能修改了,只提供访问功能
user=("zhansna","lihua","wangwu")
print(user[1])
print(user[0:2])
lihua
('zhansna', 'lihua')
集合
# set集合无序,不重复
user_set=set()
# add 添加
user_set.add("zhansna")
user_set.add("lihua")
print(user_set)
# remove 删除
user_set.remove("lihua")
print(user_set)
{'lihua', 'zhansna'}
{'zhansna'}
字典
# dict {} dict全称dictionary,在其他语言中也称为map,使用键-值(key-value)存储,具有极快的查找速度。
d = {'Michael': 95, 'Bob': 75, 'Tracy': 85}
# get(key) 获取值
d.get('Bob')
print(d)
# pop(key) 删除值
d.pop('Bob')
print(d)
# 使用key来修改和添加
d["Bob"]=80
d["New"]='new'
print(d)
{'Michael': 95, 'Bob': 75, 'Tracy': 85}
{'Michael': 95, 'Tracy': 85}
{'Michael': 95, 'Tracy': 85, 'Bob': 80, 'New': 'new'}
D.get(key, 0) #同dict[key],多了个没有则返回缺省值,0。[]没有则抛异常
D.has_key(key) #有该键返回TRUE,否则FALSE
D.keys() #返回字典键的列表
D.values() #以列表的形式返回字典中的值,返回值的列表中可包含重复元素
D.items() #将所有的字典项以列表方式返回,这些列表中的每一项都来自于(键,值),但是项在返回时并没有特殊的顺序
D.update(dict2) #增加合并字典
D.popitem() #得到一个pair,并从字典中删除它。已空则抛异常
D.clear() #清空字典,同del dict
D.copy() #拷贝字典
D.cmp(dict1,dict2) #比较字典,(优先级为元素个数、键大小、键值大小)
#第一个大返回1,小返回-1,一样返回0
dictionary的复制
dict1 = dict #别名
dict2=dict.copy() #克隆,即另一个拷贝。
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/156291.html