Python基础语法学习8

格式字符串

1.格式字符串

语法:
带有格式占位符的字符串%(数据1,数据2,数据3,…)
说明:
1.格式占位符 – 字符串中不同类型数据的占位符号,固定的。
%s – 字符串的格式占位符(任何类的数据都可以赋值)
%d – 整数的格式占位符
%f – 浮点数的格式占位符
%c – 字符的格式占位符
2.%() – 固定写法
3.数据 – 最后给字符串中不确定内容赋值的数据;数据的个数和类型要和前面占位符的个数以及类型保持一致

2.format

用法1:带{}的字符串.format(数据1,数据2,数据3,…)
用法2:{下标}
用法3:{key}
加约束:{:约束}/{下标:约束}/{key:约束}

# (1)约束小数位数  --  {:.Nf}
print("a--{0:.1f},b--{1:.2f},c--{0:.3f}".format(10, 20))  # a--10.0,b--20.00,c--10.000
# (2)控制显示正负号  {:+}
print("a:{:+} b:{:+}".format(10, -20))  # a:+10 b:-20
# (3)控制数字的宽度:{:x>N}/{:x<N}  --  N表示数据最终的位数,x是填充数字,>表示填充在原数字的左边,<填充在右边,x没有,用空格占位
print("a:{:>5} b:{:<5}!".format(10, -20))  # a:   10 b:-20  !
print("a:{:0>5} b:{:1<5}!".format(10, -20))  # a:00010 b:-2011!
print("a:{:x>5} b:{:y<5}!".format(10, -20))  # a:xxx10 b:-20yy!
# (4)大数字用逗号隔开{:,}
print("a:{:,} b:{:,}".format(10, 10000000000))  # a:10 b:10,000,000,000
# (5)显示百分比:{:.N%}  --  N控制百分制数小数点的位数
print("a:{:.2%} b:{:.1%}".format(0.44, 0.147))  # a:44.00% b:14.7%

3.f-string的用法

name = "cc"
age = 22
message = f"a:{name},b:{age}"  # a:cc,b:22
print(message)

print(f"a:{100:.2f}")  # a:100.00

字符串常用方法

1.center/rjust/ljust

print("abc".center(7, "x"))  # xxabcxx
print("abc".rjust(7, "+"))  # ++++abc
print("abc".ljust(7, "*"))  # abc****
# zfill == rjust填充字符固定0
print("abc".zfill(7))  # 0000abc

# 输入学生编号,自动产生对应的学号: python2003001....
n = int(input("n="))
str2 = "python2003"
for i in range(1, n + 1):
    str3 = str(i)
    str4 = str2 + str3.zfill(3)
    print(str4)

2.count 统计字符或者字符串出现的次数

message = "cbcdfccccahjyraccccce"  # 5
print(message.count("c", 1, 10))

3.index/find

message = "abcdfghjyre"
print(message.index("c"))  # 2 不存在时会报错
print(message.find("c"))  # 2 不存在时不会报错 返回-1

4.join

字符串.join(序列) – 将序列中的元素用指定字符串拼接成一个新的字符串(序列中的元素必须都是字符串)

list1 = ["name", "age", "sex"]
print("".join(list1))  # nameagesex
print(" ".join(list1))  # name age sex
print("abc".join(list1))  # nameabcageabcsex
print("+".join("abc"))  # a+b+c
print("=".join({"a": 10, "b": 20}))  # a=b

5.lstrip/rstrip/strip – 删除空白

message = "\n\t  abc \t 444  "
print(message, "7777", sep="")
new1 = message.lstrip()
print(new1, "7777", sep="")
new2 = message.rstrip()
print(new2, "7777", sep="")
new3 = message.strip()
print(new3, "7777", sep="")

6.maketrans和translate

table = str.maketrans("abc", "123")  # 创建映射表:a-1,b-2,c-3
new_str1 = "abc".translate(table)  # 按照指定的映射表将原字符串中的字符进行替换
print(new_str1)  # 123

7.replace

字符串1.replace(字符串2,字符串3,count(次数限制)) – 将字符串1中的字符串2全部替换成字符串3

message = "abcdfghjbcyre"
new_str1 = message.replace("bc", "444")
print(new_str1)  # a444dfghj444yre
new_str2 = message.replace("bc", "444", 1)
print(new_str2)  # a444dfghjbcyre

8.split

字符串1.split(字符串2) – 将字符串2作为切割点对字符串1进行分割

message = "how are you? I am fine, and you?"
print(message.split(" "))  # ['how', 'are', 'you?', 'I', 'am', 'fine,', 'and', 'you?']

函数的作用

1.同样的功能需要多次的时候需要把实现这个功能的代码写多遍
2.如果功能发生改变,需要修改多个位置的代码

函数的定义

1.什么是函数

(1)函数的概念
函数就是实现某一特定功能的代码的封装
(2)函数的分类
系统函数:系统已经定义好的函数,程序根据需求直接使用。例如:print,input,type…
自定义函数:程序员自己定义的函数

2.函数的定义

语法:
def 函数名(形参列表):
函数说明文档
函数体
说明:
1.def – 关键;固定写法
2.函数名 – 程序员自己命名
要求:标识符;不能是关键字
规范:所有字母都小写,多个单词之间用下划线;
见名知义(看到函数名大概知道函数的功能)
不能使用系统自带的函数名,模块名和类名
3.形参列表 – 以 变量名1,变量名2,变量名3,…的形式存在(可以一个变量都没有)
形参的作用是将函数外部的数据传递到函数的内部
定义函数的时候需不需要形参,需要几个形参看实现函数的功能需要不需要额外的数据,需要几个。
4.函数说明文档 – 用”“”“”“表示的说明性文字
5.函数体 – 和def保持一个缩进的一条或者多条语句;就是实现函数功能的一条或者多条语句

注意:定义函数的时候不会执行函数体

3.初学者定义函数的步骤

第一步:确定函数的功能
第二步:根据函数的功能确定函数名字
第三步:确定函数的参数(看实现函数的功能需要不需要额外的数据,需要几个)
第四步:实现函数的功能
第五步:写函数的说明文档

4.调用函数(使用机器)

语法:
函数名(实参列表)
说明:
函数名 – 已经定义好的函数的函数名
实参列表 – 以数据1,数据2,数据3,…的形式存在(也可以没有);
真正传递到函数中使用的数据

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值