Python初学者学习记录4

一、字符串的三种定义

        1、单引号定义:name = '程序员'

        2、双引号定义:name = "程序员"

        3、三引号定义:name = """程序员"""

# 单引号定义法
name = '程序员'
print(type(name), name)
# 双引号定义法
name = "程序员"
print(type(name), name)
# 三引号定义法,写法和多行注释是一样的,用变量接收就是字符串,不用变量接收就是注释
name = """
我是
一名
程序员
"""
print(type(name), name)

#字符串的引号嵌套
# 第一种:单引号定义法,内含双引号
name = '"黑马程序员"'
print(name)
# 第二种:双引号定义法,内含单引号
name = "'黑马程序员'"
print(name)
# 第三种:使用转义字符(\)来将引号解除效用,变成普通字符串
name = "\"黑马程序员\""
print(name)
name = '\'黑马程序员\''
print(name)

二、字符串拼接

# 字符串拼接

# 字符串字面量之间的拼接
print("学IT来黑马" + "月薪过万")
# 字符串字面量和字符串变量的拼接
name = "黑马程序员"
print("我的名字是:" + name + ",我可以教大家IT技能")

a = "521"
b = "1314"
print(a + b)

        *注意:无法和非字符串类型进行拼接

三、字符串格式化

        字符串格式化的语法:"%占位符" % 变量。

        可以支持拼接其他类型,通过占位的方式来完成拼接。

#字符串格式化
name = "黑马程序员"
message = "学IT就来:%s" % name
print(message)

结果
学IT就来:黑马程序员

        其中:%表示:我要占位;s表示:将变量变成字符串放入占位的地方。

        *注意:多个变量占位,变量要用括号括起来,并按照占位的顺序填入。

tel = 88888888
address = "北京"
message = "我的家在%s;我的电话号码是:%s。" % (address, tel)
print(message)

        Python中,支持非常多的数据类型占位,最常用的有三类:%s(将内容转换成字符串,放入占位位置)、%d(将内容转换成整数,放入占位位置)、%f(将内容转换成浮点型,放入占位位置)。

name = "传智播客"
set_up_year = 2006
stock_price = 19.99
message = "我是:%s,我成立于:%d年,我今天的股价是:%s" % (name, set_up_year, stock_price)
print(message)

结果
我是:传智播客,我成立于:2006年,我今天的股价是:19.990000

四、格式化的精度控制

       使用辅助符号"m.n"来控制数据的宽度和精度。

              m:控制宽度,要求是数字(很少使用),设置的宽度小于数字自身,不生效

              .n:控制小数点精度,要求是数字,会进行小数的四舍五入

           例如:

              · %5d:表示将整数的宽度控制在5位,如数字11,被设置位5d,就会变成:[空格][空格][空格]11,用三个空格补足宽度。

              · %7.2f:表示将宽度控制为7,将小数点精度设置为2位,小数点和小数部分也算入宽度计算。如数字11.345设置了%7.2f后,就会变成:[空格][空格]11.35。两个空格补足宽度,小数部分限制2位精度后,四舍五入为.35。

              · %.2f:表示不限制宽度,只设置小数点精度为2,如11.345设置为%.2f后,就会变成:11.35。

"""
    1、精度控制的语法是:
        m.n的形式控制,如%5d、%7.2f、%.2f
        m和.n均可省略
    2、如果m比数字本身宽度还小,m不生效
    3、.n会对小数部分做精度限制,同时:会对小数部分做四舍五入
"""
num1 = 11
num2 = 11.345
print("数字11宽度限制5,结果是:%5d" % num1)
print("数字11宽度限制1,结果是:%1d" % num1)
print("数字11.345宽度限制7,小数点精度2,结果是:%7.2f" % num2)
print("数字11.345宽度不限制,小数点精度2,结果是:%.2f" % num2)

五、字符串格式化方式2

        通过语法:f"内容{变量}"的格式来快速格式化。

        *注意:此方法不限数据类型,不做精度控制,原样输出。适合于对精度没有要求的时候快速使用。

# 字符串格式化 - 快速写法
# 通过语法:f"内容{变量}"的格式来快速格式化

name = "传智博客"
set_up_year = 2006
stock_price = 19.99
# f:format的首字母
print(f"我是{name},我成立于:{set_up_year}年,我今天的股票价格是:{stock_price}元")

六、对表达式进行格式化

        1、对于字符串格式化,可以直接格式化一个表达式。

        2、在无需使用变量进行数据存储的时候,可以直接格式化表达式,简化代码。

        3、如何格式化表达式:f"{表达式}"、"%s\%d\%f" % (表达式、表达式、表达式)

# 字符串格式化 - 表达式的格式化

print("1 * 1的结果是:%d" % (1 * 1))
print(f"2 * 3的结果是:{2 * 3}")
print("字符串在Python中的类型是:%s" % type("字符串"))

七、字符串格式化练习题 - 股票计算小程序

# 股票计算小程序

# 公司名
name = "传智播客"
# 当前股价
stock_price = 19.99
# 股票代码
stock_code = "003032"  # 数字不能直接以0开头,所以使用字符串比较合适
# 股票每日增长系数
stock_price_daily_growth_factor = 1.2
# 增长天数
growth_days = 7
# 计算股价:当前股价*增长系数**增长天数
current_stock_price = stock_price * stock_price_daily_growth_factor ** growth_days

print(f"公司:{name},股票代码:{stock_code},当前股价:{stock_price}")
print("每日增长系数是:%.1f,经过%d天增长后,股价达到了:%.2f" % (stock_price_daily_growth_factor, growth_days, current_stock_price))

  • 21
    点赞
  • 25
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值