Task 01 变量、运算符与数据类型

我们准备利用17天时间,将 Python 基础的刻意练习分为如下任务:

Task01:变量、运算符与数据类型(1day)
Task02:条件与循环(1day)
Task03:列表与元组(2day)
Task04:字符串与序列(1day)
Task05:函数与Lambda表达式(2day)
Task06:字典与集合(1day)
Task07:文件与文件系统(2day)
Task08:异常处理(1day)
Task09:else 与 with 语句(1day)
Task10:类与对象(2day)
Task11:魔法方法(2day)
Task12:模块(1day)

TASK01 :变量、运算符与数据类型

  1. 注释
    在Python中,#表示注释,作用于整行
# 这是一个注释
print("Hello world")

# Hello world
"""  """或者''' '''表示区间注释,在三引号之间的所有内容被注释
'''
这是多行注释,用三个单引号
这是多行注释,用三个单引号
这是多行注释,用三个单引号
'''
print("Hello Lsgo") 

# Hello Lsgo

"""
这是多行注释,用三个双引号
这是多行注释,用三个双引号 
这是多行注释,用三个双引号
"""
print("hello china") 

# hello china

2.运算符
在这里插入图片描述
三元运算符

x, y = 4, 5
if x < y:
    small = x
else:
    small = y

print(small)  # 4

有了三元操作符的条件表达式,你可以使用一条语句来完成以下的条件判断和赋值操作

x, y = 4, 5
small = x if x < y else y
print(small)  # 4

优先级
一元运算符高于二元运算符
先乘除后加减,有括号先括号内
比较运算符高于逻辑运算符

print(-3 ** 2)  # -9
print(3 ** -2)  # 0.1111111111111111
print(-3 * 2 + 5 / -2 - 4)  # -12.5
print(3 < 4 and 4 < 5)  # True

3.变量和赋值
在使用变量之前,需要对其先赋值
变量名可以包含字母、数字、下划线、但是变量名不能以数字开头
Python变量名是区分大小写的, foo!=FOO
例子1

first = 2
second = 3
third = first + second
print(third)  # 5
``
例子2

```python
myTeacher = "老马的程序人生"
yourTeacher = "小马的程序人生"
ourTeacher = myTeacher + yourTeacher
print(ourTeacher)  # 老马的程序人生小马的程序人生

4.数字
int整型 float浮点型 bool布尔型(True False)

对于二进制例子

a = 1031
print(bin(a))  # 0b10000000111
print(a.bit_length())  # 11

该函数是找到一个整数的二进制表示,再返回其长度

浮点型

有时候我们想保留浮点型的小数点后n位,可以用 decimal包里的Decimal对象和**getcontext()**方法来实现。

import decimal
from decimal import Decimal
a = decimal.getcontext()
print(a)

# Context(prec=28, rounding=ROUND_HALF_EVEN, Emin=-999999, Emax=999999, capitals=1, clamp=0, flags=[], traps=[InvalidOperation, DivisionByZero, Overflow])

Decimal对象的默认精度是28位

例子

b = Decimal(1) / Decimal(3)
print(b)

# 0.3333333333333333333333333333

我们如何自己调整保留位数呢?
可以用getcontext().prec来调整精度
例子

decimal.getcontext().prec = 4
c = Decimal(1) / Decimal(3)
print(c)

# 0.3333

布尔型
布尔型变量只能取两个值,True和False,当把布尔变量用在数字运算中,用1和0代表True和False

print(True + True)  # 2
print(True + False)  # 1
print(True * False)  # 0

除了直接给变量赋值 True 和 False,还可以用 bool(X) 来创建变量,其中 X 可以是

基本类型:整型、浮点型、布尔型
容器类型:字符、元组、列表、字典和集合

print(type(0), bool(0), bool(1))
# <class 'int'> False True

print(type(10.31), bool(0.00), bool(10.31))
# <class 'float'> False True

print(type(True), bool(False), bool(True))
# <class 'bool'> False True

bool 作用在基本类型变量的总结:X 只要不是整型 0、浮点型 0.0,bool(X) 就是 True,其余就是 False。

print(type(''), bool(''), bool('python'))
# <class 'str'> False True

print(type(()), bool(()), bool((10,)))
# <class 'tuple'> False True

print(type([]), bool([]), bool([1, 2]))
# <class 'list'> False True

print(type({}), bool({}), bool({'a': 1, 'b': 2}))
# <class 'dict'> False True

print(type(set()), bool(set()), bool({1, 2}))
# <class 'set'> False True

bool 作用在容器类型变量的总结:X 只要不是空的变量,bool(X) 就是 True,其余就是 False。

确定bool(X) 的值是 True 还是 False,就看 X 是不是空,空的话就是 False,不空的话就是 True。
对于数值变量,0, 0.0 都可认为是空的。
对于容器变量,里面没元素就是空的。

5.数据类型与转换
获取类型信息 type()

print(type(1))  # <class 'int'>
print(type(5.2))  # <class 'float'>
print(type(True))  # <class 'bool'>
print(type('5.2'))  # <class 'str'>

获取类型信息 isinstance()

print(isinstance(1, int))  # True
print(isinstance(5.2, float))  # True
print(isinstance(True, bool))  # True
print(isinstance('5.2', str))  # True

转换为整型 int()
转换为字符串 str()
转换为浮点型 float()

print(int('520'))  # 520
print(int(520.52))  # 520
print(float('520.52'))  # 520.52
print(float(520))  # 520.0
print(str(10 + 10))  # 20
print(str(10.1 + 5.2))  # 15.3
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值