1、小数位数
(“%0.2f"%n )是一个格式化字符串,其中 %f 表示浮点数,.2 表示保留两位小数,0 表示如果数字不足两位小数,则在前面补零。此外,会确保输出结果总是有两位小数,即使小数部分不足两位也会补零。
round(n, 2) 会对浮点数 n 进行四舍五入,保留两位小数,但位数不足两位时,不会补足。
n = float(input()) #n=1.0
print("%0.2f"%n) #输出1.00
print(round(n,2)) #输出1.0
其他区别:
- 类型:print("%0.2f"%n) 返回的是一个字符串,而 round 返回的是一个浮点数。
- 功能:print("%0.2f"%n) 只是格式化输出,不改变原值;round 会改变原值,返回一个新的四舍五入后的值。
- 使用场景:如果你只需要输出格式化的字符串,使用 print("%0.2f"%n);如果你需要对数值进行四舍五入并继续使用这个值,使用 round。
2、进制转换
2.1 其他进制转十进制
在Python中,可以使用内置的 int 函数将其他进制字符串转换为十进制数。int 函数的第二个参数指定输入字符串的基数(进制)。
#十六进制转十进制
print(int(A,16)) #输出10
#八进制转十进制
print(int(12,8)) #输出10
#二进制转十进制
print(int(11,2)) #输出3
2.2 十进制转其他进制
#二进制转换--bin
print(bin(13)) #输出 0b1101
#八进制转换--oct
print(oct(13)) #输出 0o15
#十六进制转换--hex
print(hex(13)) #输出 0xd
#需要去掉前缀可以使用[2:],如:
print(bin(13)[2:]) #输出1101
3、字符串大小写
将字符串改为全小写、全大写和首字母大写的方式
n = "niHao"
#全小写--lower
print(n.lower()) #输出nihao
#全大写--upper
print(n.upper()) #输出NIHAO
#首字母大写,其余小写--title
print(n.title()) #输出Nihao
4、去除左右空格
用 strip 去除字符串最前面和最后面的空格
n= str(input().strip())
"""
n = " nihao " 输出 "nihao"
n = " ni hao " 输出"ni hao"
"""
strip和split的区别
(1)strip
strip() 方法用于移除字符串开头和结尾的指定字符(默认为空格)。
str.strip([chars])
chars(可选):一个字符串,指定要从开头和结尾移除的字符。如果未提供,默认移除空格。
示例:
n= " Hello, World! "
n = n.strip()
print(n) # 输出: "Hello, World!"
n = "###Hello, World!###"
n = n.strip('#')
print(n) # 输出: "Hello, World!"
(2)split
split() 方法用于将字符串分割成子字符串列表,并返回这些子字符串的列表。
split分割后即为列表,不需要使用list转换为列表
str.split([sep[, maxsplit]])
sep(可选):分隔符,用于指定分割字符串的位置。如果未提供,默认使用空格作为分隔符。
maxsplit(可选):最大分割次数。如果未提供,默认分割所有匹配的分隔符。
示例:
text = "Hello, World!"
words = text.split()
print(words) # 输出: ['Hello,', 'World!']
text_with_sep = "apple,banana,cherry"
fruits = text_with_sep.split(',')
print(fruits) # 输出: ['apple', 'banana', 'cherry']
text_with_maxsplit = "one,two,three,four"
parts = text_with_maxsplit.split(',', 2)
print(parts) # 输出: ['one', 'two', 'three,four']
5、输出整数组成的完整列表
使用map函数
n = input().split()
print(list(map(int,n)))
#map是惰性函数,需要使用list显示
map() 函数接受两个参数:一个函数和一个可迭代对象。它会将这个函数应用到可迭代对象的每一个元素上,并返回一个包含结果的迭代器。
6、append的用法
n = input().split()
print(n.append("Allen"))
❗❗❗输出为空
原因:
- append 方法是一个原地修改列表的方法,它会直接修改列表 n,但不会返回任何值(即返回 None)
- print(n.append("Allen")):这行代码试图打印 n.append("Allen") 的返回值。由于 append 方法返回 None,所以打印出来的结果是空
正确方法:
n = input().split()
n.append("Allen")
print(n)
#输入:Niuniu Niumei Lucy Niuneng
#输出:['Niuniu', 'Niumei', 'Lucy', 'Niuneng', 'Allen']