【在校课堂笔记】Python 第1节课 【课下总结】

2025 - 02 - 28 - 第 63 篇
Author: 郑龙浩 / 仟墨
【Python在校课堂笔记】

Python第1节课 【课下总结】

2025-02-27上课

写这篇笔记不仅仅为了写作业,也是想总结一下本节课的内容加深印象,同时发布博客方便复习。

print() 的多种使用

1 直接打印 字面量(常量)

print( 2025, 2, 28 )
print( 2025, 2, 28, sep = '/' )
print( 2025, 2, 28, sep = '' )

2 使用变量

year = 2025
month = 2
day = 28
print( year, month, day )
# 可自定义分隔符,写什么都可以
print( year, month, day, sep = '/')
# 如果'',则表示无任何字符,也就是空格符为无
print( year, month, day, sep = '')
# 两种方法
print( '%d年%d月%d日' % (year, month, day) )
print(f'{year}{month}{day}日')

打印结果

2025 2 28
2025/2/28
2025228
20252282025228

3 原样打印

不可在使用引号的同时在内部使用相同的引号

print( "AA说:"5445315"" ) # 这时候会出问题,会报错,这是不合法的

应该是

print( '''AA说:"5445315"''' ) # 正确
print( 'AA说:"5445315"' ) # 正确

二 接受数据, 类型转换, 赋值

1 input()

input可用于接收字符串,如果输入的是数字,比如123,也不是数值,而是字符串"123"

a = input()
print( a )
输入 #你好
打印 #你好

在输入的时候可以打印提示

之前用C 或 C++写的时候,每次提示,都要再打印一遍,Python不需要,可以 用 input 直接提示

a = int(input('请输入一个整数:'))
print( a )

2 类型转换

可转换为 int, float, bool

a = int (input())
b = int (input())
print( a + b )

3 eval

使用 eval 可以自动匹配类型

a = eval (input())

三 不同数字类型的计算的时候会自动转换类型

当数据类型不相同时,应该按照一定的优先级提升类型

int < float < complex < bool

老师举了 int 与 float之间计算的时候的自动类型转换

a = int (input())
b = float (input())
print( a + b )
'''
输入 10 2.567
打印 12.567
'''

四 print 控制打印的 总宽度 与 小数位数

注意

设限宽度 > 实际宽度的时候,打印时空格补充,如果设限宽度前面写0,则0补充

设置小数位数的时候,打印结果会进行四舍五入

1. 第一种

  • 控制小数位数

    保留小数的时候会进行四舍五入

    num = 1.23456
    print(f"{num:.3f}")  # 输出:1.235
    print(f"{num:.1f}")  # 输出:1.2
    
  • 控制整数宽度

    1. 加0可补0
    2. 大于小于 是 右对齐左对齐
    num = 7
    print(f"{num:4d}")  # 输出:     7
    print(f"{num:>4d}")  # 输出:    7
    print(f"{num:<4d}")  # 输出: 7
    print(f"{num:04d}")  # 输出: 0007
    print(f"{num:>04d}")  # 输出:0007
    print(f"{num:<04d}")  # 输出:7000
    
  • 同时控制宽度和小数位数

    1. 会进行四舍五入
    2. 所设宽度包含小数点,也就是小数点也算作一位,Eg: 1.234是五位
    3. 同样,当设限宽度 < 实际宽度 时,依然保持原宽度
    4. 左右对齐在控制小数的时候依然有效
    num = 1.23456
    print(f"{num:6.3f}")  # 输出:      1.235
    print(f"{num:>6.3f}")  # 输出:     1.235
    print(f"{num:<6.3f}")  # 输出:    1.235
    print(f"{num:06.3f}")  # 输出:    01.235
    print(f"{num:>06.3f}")  # 输出:   01.235
    print(f"{num:<06.3f}")  # 输出:   1.2350
    

2. 第二种 - 使用format方法

format方法提供更灵活的格式化选项。

  • 控制小数位数

    保留小数的时候会进行四舍五入

    num = 1.23456
    print("{:.3f}".format(num))  # 输出:1.235
    print("{:.1f}".format(num))  # 输出:1.2
    
  • 控制整数宽度

    1. 加0可补0
    2. 大于小于 是 右对齐左对齐
    num = 7
    print("{:4d}".format(num))  # 输出:     7
    print("{:>4d}".format(num))  # 输出:    7
    print("{:<4d}".format(num))  # 输出: 7
    print("{:04d}".format(num))  # 输出: 0007
    print("{:>04d}".format(num))  # 输出:0007
    print("{:<04d}".format(num))  # 输出: 7000
    
  • (注意)同时控制宽度和小数位数:

    1. 会进行四舍五入
    2. 所设宽度包含小数点,也就是小数点也算作一位,Eg: 1.234是五位
    3. 同样,当设限宽度 < 实际宽度 时,依然保持原宽度
    4. 左右对齐在控制小数的时候依然有效
    num = 1.23456
    print("{:6.3f}".format(num))  # 输出:   1.235
    print("{:>6.3f}".format(num))  # 输出:  1.235
    print("{:<6.3f}".format(num))  # 输出: 1.235
    print("{:06.3f}".format(num))  # 输出: 01.235
    print("{:>06.3f}".format(num))  # 输出:01.235
    print("{:<06.3f}".format(num))  # 输出:1.2350
    

3. 第三种 - 使用百分号格式化 - 和 C/C++ 好像

使用百分号格式化的时候,左右对齐就不是<>

  • 左对齐 - 加负号

    print("%-04d" % num)  # 输出:7000
    
  • 右对齐 - 不加任何多余的字符,+也不能加,如果加上,表示就是 字符+原样打印

    print("%4d" % num)  # 输出:   0007
    print("%+4d" % num)  # 输出:  +007
    
  • 控制小数位数

    保留小数的时候会进行四舍五入

    num = 1.23456
    print("%.2f" % num)  # 输出:1.23
    print("%.3f" % num)  # 输出:1.235
    
  • 控制整数宽度

    1. 加0可补0
    2. 大于小于 是 右对齐左对齐

    使用百分号格式化的时候,左右对齐就不是<>

    • 左对齐 - 加负号

      print("%-04d" % num)  # 输出:7000
      
    • 右对齐 - 不加任何多余的字符,+也不能加,如果加上,表示就是 字符+原样打印

      print("%4d" % num)  # 输出:   0007
      print("%+4d" % num)  # 输出:  +007
      
    num = 7
    print("%4d" % num)  # 输出:    7
    print("%+4d" % num)  # 输出:  +7
    print("%-4d" % num)  # 输出: 7
    print("%04d" % num)  # 输出: 0007
    print("%+04d" % num)  # 输出:+007
    print("%-04d" % num)  # 输出:7000
    
  • 同时控制宽度和小数位数

    1. 会进行四舍五入
    2. 所设宽度包含小数点,也就是小数点也算作一位,Eg: 1.234是五位
    3. 同样,当设限宽度 < 实际宽度 时,依然保持原宽度
    4. 左右对齐在控制小数的时候依然有效
    num = 1.23456
    print("%6.3f" % num)  # 输出:   1.235
    print("%+6.3f" % num)  # 输出:  +1.235
    print("%-6.3f" % num)  # 输出:  1.235
    print("%06.3f" % num)  # 输出:  01.235
    print("%+07.3f" % num)  # 输出: +01.235
    print("%-06.3f" % num)  # 输出: 1.235
    

五 我遇到的给变量赋值问题

因为以前写代码使用的是 C/C++ 所以写 Python 的时候总会带一些以前的习惯

刚开始我连续定义三个变量的时候,写成了一行,然后 PyCharm 给我报错了,我查了一下才知道,Python 中并不能将三个变量同时赋值,Python 会将它解释为元组,应该是一行一行去赋值,或者用另一种方法

  • 错误写法

    year = 2025, month = 2, day = 28 
    
  • 正确写法1

    year = 2025
    month = 2
    day = 28
    
  • 正确写法2

    year, month, day = 2025, 2, 28
    
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值