Python的基本类型(一)

什么是代码:代码是现实世界事物在计算机世界中的映射

什么是写代码:写代码是将现实世界中的事物用计算机语言来描述

一、Number:数字

1.整数:int(只有这一种)

2.浮点数:float(python中没有单双精度之分)

其他语言:单精度(float),双精度(double)

其他语言:short、int、long

type()函数可以查看某个变量的类型

type(1)---->int       type(1.0)---->float      type(1+1) --->int   type(1*1.0)--->float     type(1*1) --->int                type(1*1.0)--->float

type(2/2)--->float 注意python中两个整型相除的结果是float,如果想要得到整型需要写成  type(2//2)--->int

总结/与//的区别:/表示除法但是其结果会自动的转换成浮点类型

                             //表示取整        1//2=0

二进制的表示(括号中的为对应的十进制):0b10(2)   0b11(3)                                 0b(零b)

八进制的表示:0o10(8)    0o11(9)                                                                       0o(零欧)

十六进制的表示:0x10(16)    0x11(17)                                                                     0x(零x)

进制之间的转换:

1.bin()方法:将任意进制的数转换为二进制

>>> bin(10)
'0b1010'
>>> bin(0o7)
'0b111'
>>> bin(0xE)
'0b1110'
>>> 

2.int()方法:将任意进制的数转换为十进制

>>> int(0b111)
7
>>> int(0xE)
14
>>> int(0o7)
7
>>> 

3.hex()方法:将任意进制转换为十六进制

>>> hex(0o77)
'0x3f'
>>> hex(888)
'0x378'
>>> hex(0o777)
'0x1ff'

4.oct()方法:将任意进制转换为八进制

>>> oct(0b1010)
'0o12'
>>> oct(0xE)
'0o16'

2.bool布尔类型:表示真和假

True为真                         False为假                      (注意首字母大写否则报错)

>>> type(True)
<class 'bool'>
>>> type(False)
<class 'bool'>
>>> type(true)
Traceback (most recent call last):
  File "<pyshell#4>", line 1, in <module>
    type(true)
NameError: name 'true' is not defined
>>> type(false)
Traceback (most recent call last):
  File "<pyshell#5>", line 1, in <module>
    type(false)
NameError: name 'false' is not defined
>>> int(True)
1
>>> int(False)
0
>>> bool(1)
True
>>> bool(0)
False
>>> bool(2)
True
>>> bool(2.0)
True
>>> bool(-1)
True
>>> bool(0)

此示例说明

(1)True转换为int类型为1,Fasle转换为int类型为0,同理可逆推。

(2)非0的数为bool真,为0的数为bool假

推广:

>>> bool('abc')
True
>>> bool('')
False
>>> bool([1,2,3])
True
>>> bool([])
False
>>> bool({1,1,1})
True
>>> bool({})
False
>>> bool(None)
False

(3)其他数据类型也可以向bool类型转换

(4)一般空为False

3.complex复数

>>> 36j
36j

二、str字符串

1.单引号、双引号、三引号

注意:1 与 '1'是不同的数据类型一定要区分开,单双引号一定是英文的字符,并且成对出现(引号表示字符串的时候)

>>> type(1)
<class 'int'>
>>> type('1')
<class 'str'>

为何要设置单双引号?

(引用了这位博主的文章https://blog.csdn.net/yafeil/article/details/74354904

创建本身就包含引号的字符串,而不是使用转义符。

可以在双引号包裹的字符串中使用单引号,或者在单引号包裹的字符串中使用双引号

不推荐使用第三种方式,因为不太符合Python的优美简洁(写出来太难看)

>>> "Let's go"
"Let's go"
>>> 'Let"s go'
'Let"s go'
>>> 'Let\'s go'
"Let's go"

三引号('''or"""):

可以输入多行,三引号之间输入的内容将被原样保留,之中的单号和双引号不用转义,其中的不可见字符比如/n和/t都会被保留

>>> """
hello world
hello world
"""
'\nhello world\nhello world\n'
>>> '''hello world\nhello world\nhello world'''
'hello world\nhello world\nhello world'

如果想要用三引号使三引号包裹的转义字符起作用需要用print()函数(单双引号同理)

>>> print('''hello world\nhello world\nhello world''')
hello world
hello world
hello world

如果想要使单双引号也能换行输入需要用一个反斜杠\

>>> 'hello\
 world'
'hello world'
>>> "hello\
 world"
'hello world'
>>> 

2.转义字符:特殊的字符

无法“看见”的字符

与本身语法有冲突的字符

\n        换行                                 \\         \

\'         单引号

\t         横向制表符

\r         回车

>>> print('hello \\n world')
hello \n world

 实例:如果要输出文件的路径

>>> print('c:\\northwind\\northwest')
c:\northwind\northwest

3.原始字符串

实例:如果要输出文件的路径

>>> print('c:\\northwind\\northwest')
c:\northwind\northwest
>>> print(r'c:\northwind\northwest')
c:\northwind\northwest

第一种形式是一个普通的字符串,并且书写繁琐不美观

第二种形式不是一个普通字符串 ,而是一个原始字符串(所见即所得)

但是像Let’s go这种形式的可以用原始字符串吗?不可以,因为即使是原始字符串他也是一个字符串,引号要成对出现

>>> print(r'Let's go')
	  
SyntaxError: invalid syntax

4.字符串的运算

+:将两个字符串拼接起来

>>> "hello"+"world"	  
'helloworld'
>>> "hello"+" "+"world"	  
'hello world'
>>> "hello "+"world"  
'hello world'

*:将一个字符串重复n次

>>> "hello"*3
'hellohellohello'
>>> "hello "*3
'hello hello hello '

[n]:访问字符串中的任意字符(n为正整数和0)

>>> "hello world"[0]
'h'
>>> "hello world"[4]
'o'
>>> "hello world"[1]
'e'
>>> "hello world"[-1]
'd'
>>> "hello world"[-3]
'r'

字符串是从0开始的,[n]是从左往右数n次,[-n]从右往左数n次(注意此时的[-1]和[-0]取出的都是末尾的第一个字符)

:    :截取一段字符

截取hello                为什么是[0:5]而不是[0:4]?因为python中规定,必须截取到末尾字符的下一位

>>> "hello world"[0:5]
'hello'

如果[0:-1]就是步长的意义

>>> "hello world"[0:-1]
'hello worl'

示例;截取“hello world”的world

>>> "hello world"[6:11]
'world'
>>> "hello world"[6:20]
'world'
>>> "hello world"[6:]
'world'
>>> "hello world"[-5:]
'world'

第二种形式虽然超出了字符串的长度,但是只会截取到字符串的末尾

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值