python学习之路:四.数据类型

一.字符串str

作用:一般记录描述性性质的数据,比如name,age,gender

如何定义字符串:

    方式1:
      name=‘xm’
    方式2:
      name="xm"
    方式3:
      name='''xm'''
    方式4:
      name="""xm"""

 

 

二.列表list

作用:可以存放多个数据,并且方便取出。

定义:使用中括号把数据括起来,并用逗号当做分隔符。

name_list = ['ly', 'jason', 'tom', 'qq', 'kevin']
print(type(name_list))
print(name_list)

# 列表取值需要使用索引取值(索引取值从0开始)
print(name_list[1])
print(name_list[3])
print(name_list[0])

 

三.元组tuple

作用:和列表一样,可以存放多个数据,方便取出(不同之处在于元组内的元素不可变)

定义:小括号括起来,里面可以存放多个元素,元素与元素之间使用逗号隔开。

t = (1, 2, 3, 4)

 

四.字典dict

定义:字典就是用花括号将数据括起来,里面可以存放多个数据,数据之间用逗号隔开。

单个数据是由key与value构成。

key是具有对value描述性的功能。

value是真正的数据。

字典里value可以是任意类型,但是key只能是字符串。

 name = 'ly'
    d = {'name': 'ly', 'age': 18, 'gender': 'male'}
# 取值
# print(d[0])  # 字典不支持索引取值

# 字典取值需要借助于K, 
print(d['name'])
print(d['age'])
print(d['gender'])

 

五.布尔

作用:用来记录真假两种状态

定义:

  True:表示真

  False:表示假

在python中,所有的数据类型都可以转为布尔值。

 

六.集合

作用:用于去重,集合运算

定义:集合是用大括号括起来,里面可以存放多个元素,元素与元素之间使用逗号隔开,但是,数据形式不是K:V键值对。

    s = {1, 2, 3, 4}
print(s)

dict1 = {}  # <class 'dict'>
# 怎么定义一个空集合
s1 = set()  # set
print(type(dict1))
print(type(s1))

 

七.与用户交互

1. 输入
    s = input('请输入你要取款的金额:')
    '''input接受的数据会赋值给变量'''

    # input接收的数据类型全都是字符串
    print(s, type(s))
2. 输出
    print('hello world')
    # 输出
    # print('hello', 'world', 111, 222)

    # print(123, end='$')
    # print(345)

    # 换行符
    print('哈哈哈哈哈哈\n423\n423\n4234')

 

八.格式化输出

什么是格式化输出:

  把字符串里的一段内容替换后输出,就是格式化输出。

s = '亲爱的%s你好!你%s月的话费是%s,余额是%s'
# print(s % ('ly', 12, 1000, 9999999, 10))  # 多一个不行
print(s % ('ly', 12, 1000, 9999 ))  # 少一个不行
print(s % ('ly1', 10, 2000, 80000 ))  # 少一个不行
s = '亲爱的%s你好!你%s月的话费是%s,余额是%s' % ('ly1', 10, 2000, 80000 )

# 字符串中只有一个%s的时候会怎么样?
s1 = 'hello%s'
# 如果只有一个占位符, 那么%后面可以不加括号
print(s1 % 'world')

# %s => 占位符, 可以为所有的数据类型占位置

# %d => 只能给数字类型占位

s2 = 'my name is %s, my age is %08d'
print(s2 % ('ly', 111))
print(s2 % ('ly', 2))
print(s2 % ('ly', 666666))
print(s2 % ('ly', 9999999999999))

 

九.基本运算符

1. 算术运算符
+
-
*
/

a = 13
# print(a + 1)
# print(a - 1)
# print(a * 1)
# print(a / 1)

print(a // 4)  # 只要整数部分
print(a % 4)  # 只要余数
print(3 ** 4)

2. 比较运算符
== 
!=
>
>=
<
<=

3. 增量赋值
x += 1  # x = x + 100
x -= 1
x *= 1
x /= 1
print(x)
4. 链式赋值
x = 10
y = x
z = y
print(x, y,z )

x = y = z = 10
print(x, y,z )

5. 交叉赋值

面试题: 如何交换两个变量?
1. 借助于第三个变量
tmp = m
m = n
n = tmp
print(m, n )


2. 解压赋值
m, n = n, m
print(m, n)

x, y, z = 1, 2, 3
print(x)
print(y)
print(z)

6. 解压赋值
name_list = ['ly', 'tom', 'jason', 'kevin', 'kevin', 'kevin', 'kevin', 'kevin']
# name1 = name_list[0]
# name2 = name_list[1]
# name3 = name_list[2]
# name4 = name_list[3]
# print(name1)
# print(name2)
# print(name3)
# print(name4)

# name1, name2, name3, name4, name5 = name_list # 元素个数必须与变量个数一模一样
# name1, name2, name3, name4 = ['ly', 'tom', 'jason', 'kevin']
# print(name1)
# print(name2)
# print(name3)
# print(name4)

# 多余的元素都赋值给了星号后面的变量,如果想取,通过星号后面的变量取值就行
name1, *x, name5 = name_list
print(name1)
print(x)
print(x[0])
print(name5)

 

posted @ 2021-12-24 19:03  morningstar999  阅读(68)  评论(0)    收藏  举报