欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

python基础day04

程序员文章站 2024-03-17 16:35:04
...

字符串加强

转义字符

什么是转义字符:
     \就是转义符,转义符可以将有意义的字符转成无意义的字符. 也可以将无意义的字符转换为
	有意义的字符
	无意义的字符就是一个普普通通的字符,例如: t  n
        
例子:
    # 无意的变成有意义的
	print("我爱\t我的祖国,\n祖国也\r\n爱我!")
	# 有意义的变成无意义的
	print("我爱我的祖国,祖国也爱我!,我也爱\\n")
	print("我爱我的祖国,祖国也爱我!,我也爱\\")
	print("我爱我的祖国,祖国也爱我!,我也爱\"")

字符串

访问字符:
    语法:
    字符 = 字符串[索引]
    
    
while遍历字符:
    语法:
        索引= 0;
		长度 = len(字符串)
		while 索引 < 长度:
   			 元素 = 字符串[索引]
   			 索引+=1
        
for in 专业遍历
语法:
    for 字符 in 字符串:
    	print(字符)
        
        
1.去除两边空格
语法:
string.strip()  去除两边的空格
string.lstrip()  去除左边的空格  l==>left(左)
string.rstrip()  去除右边的空格  r==>right(右)

默认的情况下strip去除空格, 但是也可以指定去除两边的字符
语法:
string.rstrip("要去除的字符")
例子:
string = "  床前明月光  "
# 去除两边空格
print(string.strip())

# 去除左边空格
string = " ==床前明月光"
print(string.lstrip())


# 去除右边空格
string = "床前明月光== "
print(string.rstrip())


string = "床前 明月光"
print(string.strip("前"))

2.字符串分割
语法:
string.split() 按照空格字符串分割,返回一个列表
string.split("分隔符") 按照指定分隔符分割,返回一个列表
string.split("分隔符",分割次数) 按照指定分隔符分割,分割指定的次数,返回一个列表
string.rsplit("分隔符",分割次数) 从后面开始按照指定分隔符分割,分割指定的次数,返回一个列表

例子:
# string.split() 按照空格字符串分割,返回一个列表
s = "hello world"
s = s.split()
print(s)

# string.split("分隔符") 按照指定分隔符分割,返回一个列表
names = "张三,李四,王五"
print(names.split(","))

# string.split("分隔符",分割次数) 按照指定分隔符分割,分割指定的次数,返回一个列表
str = "www/baidu/python/web"
print(str.split("/", 2))

# string.rsplit("分隔符",分割次数) 从后面开始按照指定分隔符分割,分割指定的次数,返回一个列表
str = "www/baidu/python/web"
print(str.rsplit("/", 2))

3.大小写转换
语法:
string.lower() 转换为小写
string.upper() 转换为大写

例子:
# 转换大写
s="hello word"
print(s.upper())

# 转换小写
s="HELLO WORLD"
print(s.lower())

4.判断开头或结尾的字符
语法:
string.startswith("开头字符") 
string.endswith("结尾字符")

例子:
s="hello.jpg"
print(s.startswith("he"))
print(s.endswith("pg"))

5.字符串格式化
语法:
"需要格式化的字符"%(数据1,数据2)
string.format("数据1","数据2","数据3")
f"字符{变量}串"

例子:
print("我的名字是{},我的年龄是{},我的别名{}".format("张三", 18, "小强"))
print("我的名字是{0},我的年龄是{1},我的别名{0}".format("张三", 18))

6.字符串连接
语法:
string.join(列表)
列表中的元素使用string连接起来

例子:
names=["张三,李四,王五"]
print("-".join(names))

7.字符串替换
语法:
string.replace("原文","替换文")
将字符串中的原文替换成  替换的文字

例子:
s="加QQ,一起偷菜"
print(s.replace("QQ", "*"))

8.判断字符串是否由数字组成
语法:
string.isdigit()

例子:
s="123456"
print(s.isdigit())

s="123SFS153"
print(s.isdigit())

字典

修改字典

1.添加或修改
如果key不存在,添加键值对。如果key存在,修改value。
语法:
字典[key] = value

例子:
employee = {"id": 1, "name": "张飞", "age": 18}
# 修改对应的值
employee["name"] = "刘备"
# 没有就添加键值对
employee["sex"] = "男"
print(employee)

2.添加或返回原值
如果key不存在,添加键值对。如果key存在,不修改value,但返回原来value
语法:
value = 字典.setdefault(key,value)

例子:
employee = {"id": 1, "name": "张飞", "age": 18}
value = employee.setdefault("name", "张飞")
print(value)
employee.setdefault("sex", "男")
print(employee)

3.合并
将字典2的数据合并到字典,字典2会覆盖字典中已存在的内容
语法:
字典.update(字典2
          
例子:
employee = {"id": 1, "name": "张飞", "age": 18, "sex": "男"}
info = {"id": 2, "name": "关羽", "age": 20}
employee.update(info)
print(employee)          

删除字典

1.删除指定键值对
删除指定键值对,如果key不存在就会报错
语法:
del 字典[key]
字典.pop(key)
例子:
employee = {"id": 1, "name": "赵云", "age": 18, "sex": "男"}
del employee["sex"]
employee.pop("name")
print(employee)

2.清空字典
删除指定键值对,如果key不存在就会报错
语法:
字典.clear()

例子:
# 清空字典
employee.clear()
print(employee)

查询字典

1.根据key查询value
语法:
字典[key]       根据key查询值,如果key不存在就会报错
字典.get(key)  根据key查询值,如果key不存在返回None

例子:
employee = {"id": 1, "name": "大乔", "age": 20, "sex": "女"}
# 根据键查询对的值
name = employee["name"]
print(name)
# 根据key查值不存在返回空None
job = employee.get("job")
print(job)

2.获取字典中的键值对数
语法:
len(字典)

例子:
employee = {"id": 1, "name": "大乔", "age": 20, "sex": "女"}
length = len(employee)
print(length)

3.获取字典中所有值
语法:
字典.values()

例子:
employee = {"id": 1, "name": "大乔", "age": 20, "sex": "女"}
em = employee.values()
print(list(em))

4.获取字典中所有键
语法:
字典.keys()

例子:
employee = {"id": 1, "name": "大乔", "age": 20, "sex": "女"}
em = list(employee.keys())
print(em)

5.判断键是否在字典中存在
语法:
value = key in 字典

value值一定是一个boolean类型的数据
例子:
employee = {"id": 1, "name": "大乔", "age": 20, "sex": "女"}
value = "name" in employee
print(value

遍历

1.遍历key
语法:
for key in 字典:
	value = 字典[key]
例子:
employee = {"id": 1, "name": "大乔", "age": 20, "sex": "女"}
for key in employee:
    value = employee[key]
    print(value)
    print(key + ":" + str(value))
    
2.遍历值value
语法:
for value in 字典.values():
	 value
例子:
employee = {"id": 1, "name": "大乔", "age": 20, "sex": "女"}
for value in employee.values():
    print(value)

3.遍历键值对
语法:
for item in 字典.items():
	 item
例子:
employee = {"id": 1, "name": "大乔", "age": 20, "sex": "女"}
for item in employee.items():
    print(list(item))
    
4.遍历键和值
语法:
for key,value in 字典.items():
	 key,value
例子:
employee = {"id": 1, "name": "大乔", "age": 20, "sex": "女"}
for key, value in employee.items():
    print(key, ":", value)

集合

1.创建格式:
param = {value01,value02,...}
或者
set() 创建一个空集合
# 去除重复数据
names = ["张飞", "关羽", "刘备", "张飞"]
print(list(set(names)))
2.其他类型转换为集合
语法:
变量名  = set(字符串的数据|列表的数据|字典的数据)

python公共语法

内置函数和切片

s = "abcdefg"
print(len(s))
num = [1, 3, 5, 6, 2]
print(max(num))
print(min(num))
# 删除
del s

# 切片
names = ["张飞", "李四", "王五", "关羽"]
print(names[:])
print(names[1:])
print(names[1:3])
print(names[::-1])

s="abcdefg"
print(s[-3:-1])
print(s[-1:-3:-1])

运算符

1.+合并运算符
语法:
合并后数据 = 数据1+数据2
支持类型: 字符串,列表,元组
字典的合并函数为:update
例子:
# +为合并运算
print("123" + "456")
print([1, 2, 3] + [4, 5, 6])
d1 = {"name": "张三"}
d1.update({"sge ": 18})
print(d1)


2.*为重复运算符
语法:
 结果 =  数据*次数
   
支持类型: 字符串,列表,元组
  字典不支持*运算符
例子:
# *运算
print("=" * 3)
print([1, 2, 3] * 2)

3.in为判断是否存在运算符
语法:
bolean值  =  子数据 in 数据
子数据在数据中存在返回True,否则返回Flase 
例子:
# in判断是否存在
print("2"in"1234")
print(2 in [1,2,3,4])
print("name" in {"name":"张飞"})

4.not in为判断书否不存在运算符
5.3.4.not in为判断是否不存在运算符
语法:
  bolean值  =  子数据 in 数据
 子数据在数据中不存在返回True,否则返回Flase     
   支持类型: 字符串,列表,元组,字典
    
例子:
# not in判断运算符
print("2" not in "1234")
print(2  not in [1,2,3,4])

for专业遍历

1.完整for语法
语法:
for 变量 in 集合:
循环体代码
else:
只要没有通过 break 退出循环,都会执⾏的代码

支持类型: 字符串,列表,元组,字典
    
例子:
s = "abcdefg"
for i in s:
    print(i)
    if i == "c":
        break
else:
    print("循环结束了")