Python学习-变量类型

1.单变量赋值

等号(=)用来赋值,左边是一个变量名,右边是存储在变量中的值 ,定义变量不需要声明类型,可以直接赋值使用。

例:

temp1 = 100 # 赋值整型变量
temp2= 10234.0234 # 浮点型
temp3= "天气不错!" # 字符串

2.多变量赋值

Python支持给多个变量赋值。

例:

a=b=c=d=1

Python还支持给多个不同类型的变量同时赋值。

例:

temp1,temp2,temp3 = 123,22.424,"天气还行"

3.数据类型及数字类型

Python有五个标准的数据类型:

  • Numbers(数字)
  • String(字符串)
  • List(列表)
  • Tuple(元组)
  • Dictionary(字典)

Python支持四种不同的数字类型:

  • int(有符号整型)
  • long(长整型[也可以代表八进制和十六进制])
  • float(浮点型)
  • complex(复数)

例: 

intlongfloatcomplex
1051924361L0.03.14j
100-0x19323L15.2045.j
-7860122L-21.99.322e-36j
0800xDEFABCECBDAECBFBAEl32.3e+18.876j
-0490535633629843L-90.-.6545+0J
-0x260-052318172735L-32.54e1003e+26J
0x69-4721885298529L70.2E-124.53e-7j

复数的表示可以是a + bj,或者 complex(a,b) ,long类型在Python3中好像已经不用了。

4.字符串

字符串在Python中很常用。

python的字串列表有2种取值顺序:

  • 从左到右索引默认0开始的,最大范围是字符串长度少1
  • 从右到左索引默认-1开始的,最大范围是字符串开头

字符串截取:

字符串通过字符串变量[头下标:尾下标] 的方式来进行截取。

例:

str = "12345678"
a = str[0]
b = str[7]
c = str[-1]
d = str[-3]
e = str[2:]
f = str[:4]
g = str[1:5]
h = str[3:-1]*2
i = str[-5:-1]+'0000'

print(a,b,c,d,e,f,g,h,i)

输出为:

1 8 8 6 345678 1234 2345 45674567 45670000

str[0]表示取字符串的第一位

str[7]表示取第八位

str[-1]表示取最后一位,也就是倒数第一位

str[-3]表示取倒数第三位

str[2:]表示取从第三位开始到结束

str[:4]表示取从开始到第三位

ps:开始是从0开始,用字符串变量[头下标:尾下标] 截取的时候,是截止到尾下标的前一位,不包含尾下标。

str[1:5]表示取从第二位开始到第四位截止

str[3:-1]表示取从第四位开始到倒数第二位截止,*2表示输出2遍

str[-5:-1]表示从倒数第五位到倒数第二位,然后拼接上0000

5. Python列表

列表支持字符,数字,字符串甚至可以包含列表(即嵌套)。

列表用 [ ] 标识,是 python 最通用的复合数据类型。

列表中值的切割也可以用到列表变量 [头下标:尾下标] ,就可以截取相应的列表,从左到右索引默认 0 开始,从右到左索引默认 -1 开始,下标可以为空表示取到头或尾。

例:

list = [123,"apple",33.23]
new_list = [222,"banana",11.65,112,list]

print(list)
print(new_list)
print(new_list[0])
print(new_list[-1])
print(new_list[:-1])
print(new_list[1:3]*2)

输出:

[123, 'apple', 33.23]
[222, 'banana', 11.65, 112, [123, 'apple', 33.23]]
222
[123, 'apple', 33.23]
[222, 'banana', 11.65, 112]
['banana', 11.65, 'banana', 11.65]

列表的截取操作和字符串一样的操作。

6.Python元组

元组是另一个数据类型,类似于 List(列表)。

元组用 () 标识,内部元素用逗号隔开。但是元组不能二次赋值,相当于只读列表,赋值后就不能更改了。

因此如:

tuple = (123,"apple",33.23)

tuple(2)=3

就会报错:SyntaxError: can't assign to function call语法错误。

 

例:

tuple = (123,"apple",33.23)
new_tuple = (1,"banana",2.2,3,tuple)


print(tuple)
print(new_tuple)
print(new_tuple[0])
print(new_tuple[-1])
print(new_tuple[:-1])
print(new_tuple[1:3])

元组的截取操作也是一样的。

结果:

(123, 'apple', 33.23)
(1, 'banana', 2.2, 3, (123, 'apple', 33.23))
1
(123, 'apple', 33.23)
(1, 'banana', 2.2, 3)
('banana', 2.2)

7. Python字典

字典(dictionary)是除列表以外python之中最灵活的内置数据结构类型。列表是有序的对象集合,字典是无序的对象集合。

两者之间的区别在于:字典当中的元素是通过键来存取的,而不是通过偏移存取。字典用"{ }"标识。字典由索引(key)和它对应的值value组成。

 

例:

dict = {}
dict['one'] = "This is one"
dict[2] = "This is two"

tinydict = {'name': 'runoob', 'code': 6734, 'dept': 'sales'}

print(dict['one'])  # 输出键为'one' 的值
print(dict[2])  # 输出键为 2 的值
print(tinydict)  # 输出完整的字典
print(tinydict.keys()) # 输出所有键
print(tinydict.values())  # 输出所有值

结果:

 

This is one
This is two
{'name': 'runoob', 'code': 6734, 'dept': 'sales'}
dict_keys(['name', 'code', 'dept'])
dict_values(['runoob', 6734, 'sales'])

8.强制数据类型转换

函数描述

int(x [,base])

将x转换为一个整数

long(x [,base] )

将x转换为一个长整数

float(x)

将x转换到一个浮点数

complex(real [,imag])

创建一个复数

str(x)

将对象 x 转换为字符串

repr(x)

将对象 x 转换为表达式字符串

eval(str)

用来计算在字符串中的有效Python表达式,并返回一个对象

tuple(s)

将序列 s 转换为一个元组

list(s)

将序列 s 转换为一个列表

set(s)

转换为可变集合

dict(d)

创建一个字典。d 必须是一个序列 (key,value)元组。

frozenset(s)

转换为不可变集合

chr(x)

将一个整数转换为一个字符

unichr(x)

将一个整数转换为Unicode字符

ord(x)

将一个字符转换为它的整数值

hex(x)

将一个整数转换为一个十六进制字符串

oct(x)

将一个整数转换为一个八进制字符串

 其中str()和repr()都可以将python中的对象转换为字符串类型,但是有区别,str是面向用户的,而repr面向程序员。

看不懂就举个栗子:

s = 'abcde'

print(str(s))
print(repr(s))

输出为:

abcde
'abcde'

 发现repr方法把引号加上了,再试试。

s = 'abcde\n'

print(str(s))
print(repr(s))
abcde

'abcde\n'

repr方法没有识别\n换行符,而是直接输出\n了。

再试试:

s = 'abcde\\'

print(str(s))
print(repr(s))
abcde\
'abcde\\'

 可以发现repr与str的区别了,可根据需求调用。

 笔记:

  • 变量赋值简单粗暴不需要声明类型, 灵活多变,非常好用。
  • 数字数据类是不可改变的数据类型,改变数字数据类型会分配一个新的对象。
  • 字符串的操作有基本的功能不需要再自己进行拼接遍历的操作。
  • 列表用 "[ ]" 标识类似 C 语言中的数组。
  • 元组用 "( )" 标识。内部元素用逗号隔开。但是元组不能二次赋值,相当于只读列表。
  • 字典用 "{ }" 标识。字典由索引 key 和它对应的值 value 组成。
  • 判断数据类型可以用type()函数,也可以用isinstance(a, int)这样来进行验证
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值