python基础task1

python基础学习打卡

学习内容

  • 三元运算符
 x, y = 4, 5
small = x if x < y else y
print(small) # 4
  • 其他运算符,
a = ["hello"]
b = ["hello"]
print(a is b, a == b) # is, is not 对比的是两个变量的内存地址; ==, != 对比的是两个变量的值
# False True
  • 数据类型与转换
import decimal
from decimal import Decimal
b = Decimal(1) / Decimal(3)
print(b)
# 0.3333333333333333333333333333
decimal.getcontext().prec = 4 #getcontext().prec 来调整精度
c = Decimal(1) / Decimal(3)
print(c)
# 0.3333
  • print()函数
 print(*objects, sep=' ', end='\n', file=sys.stdout, flush=False)
  • 位运算
# 原码:就是其二进制表示(注意,有一位符号位)。
00 00 00 11 -> 3
10 00 00 11 -> -3
# 反码:正数的反码就是原码,负数的反码是符号位不变,其余位取反。
00 00 00 11 -> 3
11 11 11 00 -> -3
# 补码:正数的补码就是原码,负数的补码是反码+1。
00 00 00 11 -> 3
11 11 11 01 -> -3
# 符号位:最高位为符号位,0表示正数,1表示负数。在位运算中符号位也参与运算。
  • 利用位运算实现快速计算
# 通过 << , >> 快速计算2的倍数问题。
n << 1 -> 计算 n*2
n >> 1 -> 计算 n/2,负奇数的运算不可用
n << m -> 计算 n*(2^m),即乘以 2 的 m 次方
n >> m -> 计算 n/(2^m),即除以 2 的 m 次方
1 << n -> 2^n
# 通过 ^ 快速交换两个整数。
a ^= b
b ^= a
a ^= b
# 通过 a & (-a) 快速获取 a 的最后为 1 位置的整数。
00 00 01 01 -> 5
&
11 11 10 11 -> -5
---
00 00 00 01 -> 1
00 00 11 10 -> 14
&
11 11 00 10 -> -14
---
00 00 00 10 -> 2
  • assert关键词
# assert 这个关键词我们称之为“断言”,当这个关键词后边的条件为 False 时,程序自动崩溃并抛出 AssertionError 的异常。
my_list = ['lsgogroup']
my_list.pop(0)
assert len(my_list) > 0
# AssertionError
assert 3 > 7
# AssertionError
  • enumerate()函数
 enumerate(sequence, [start=0])
  • 推导式
[ expr for value in collection [if condition] ]
a = [(i, j) for i in range(0, 3) if i < 1 for j in range(0, 3) if j > 1]
print(a)
# [(0, 2)]
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值