Pthon自学用教程

avatar
作者
筋斗云
阅读量:0

Python数据类型

内置数据类型

在编程中,数据类型是一个重要的概念。

变量可以存储不同类型的数据,不同类型可以做不同的事情。

Python 默认内置了以下数据类型,分为以下几类:

文本类型:str
数字类型:int,,floatcomplex
序列类型:list,,tuplerange
映射类型:dict
设置类型:setfrozenset
布尔类型:bool
二进制类型:bytes,,bytearraymemoryview
无 类型:NoneType

获取数据类型

您可以使用以下type()函数获取任何对象的数据类型:

x = 5
print(type(x))

设置数据类型

在 Python 中,当你为变量赋值时会设置数据类型:

ExampleData Type
x = "Hello World"str
x = 20int
x = 20.5float
x = 1jcomplex
x = ["apple", "banana", "cherry"]list
x = ("apple", "banana", "cherry")tuple
x = range(6)range
x = {"name" : "John", "age" : 36}dict
x = {"apple", "banana", "cherry"}set
x = frozenset({"apple", "banana", "cherry"})frozenset
x = Truebool
x = b"Hello"bytes
x = bytearray(5)bytearray
x = memoryview(bytes(5))memoryview
x = NoneNoneType

强制类型转换

如果要指定数据类型,可以使用以下构造函数:

ExampleData TypeTry it
x = str("Hello World")strTry it »
x = int(20)intTry it »
x = float(20.5)floatTry it »
x = complex(1j)complexTry it »
x = list(("apple", "banana", "cherry"))listTry it »
x = tuple(("apple", "banana", "cherry"))tupleTry it »
x = range(6)rangeTry it »
x = dict(name="John", age=36)dictTry it »
x = set(("apple", "banana", "cherry"))setTry it »
x = frozenset(("apple", "banana", "cherry"))frozensetTry it »
x = bool(5)boolTry it »
x = bytes(5)bytesTry it »
x = bytearray(5)bytearrayTry it »
x = memoryview(bytes(5))memoryviewTry it »

Python 数字

Python 中有三种数字类型:

  • int
  • float
  • complex

当你为数字类型的变量分配值时,就会创建它们:

x = 1    # int
y = 2.8  # float
z = 1j   # complex

整数

Int,即整数,是一个整数,可以是正数或负数,没有小数,长度无限。

浮点

浮点数或“浮点数”是包含一个或多个小数的正数或负数。

复数

复数以“j”表示虚部:

x = 3+5j
y = 5j
z = -5j

强制类型转化

You can convert from one type to another with the int()float(), and complex() methods:

x = 1    # int y = 2.8  # float z = 1j   # complex  #convert from int to float: a = float(x)  #convert from float to int: b = int(y)  #convert from int to complex: c = complex(x)

随机数

Python 没有random()生成随机数的函数,但是 Python 有一个内置模块, random可用于生成随机数:

导入随机模块,显示1到9之间的随机数:

import random  print(random.randrange(1, 10))

Python字符串

字符串

python中的字符串要么被单引号引起来,要么被双引号引起来。

'hello'与"hello"相同。

您可以使用以下函数显示字符串文字print()

print("Hello")
print('Hello')

引号中的引号

您可以在字符串内使用引号,只要它们不与字符串周围的引号匹配即可:

print("It's alright")
print("He is called 'Johnny'")
print('He is called "Johnny"')

将字符串分配给变量

将字符串分配给变量的方法是使用变量名后跟等号和字符串:

a = "Hello"
print(a)

多行字符串

您可以使用三个引号将多行字符串分配给变量:

a = """Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.""" print(a)  或者三个单引号:   a = '''Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.''' print(a)

字符串是数组

与许多其他流行的编程语言一样,Python 中的字符串是表示 Unicode 字符的字节数组。

但是,Python 没有字符数据类型,单个字符只是一个长度为 1 的字符串。

方括号可用于访问字符串的元素。

a = "Hello, World!" print(a[1])  输出e

循环遍历字符串

由于字符串是数组,我们可以使用循环来循环遍历字符串中的字符for

for x in "banana":   print(x)  output  ​ b a n a n a

字符串长度

要获取字符串的长度,请使用函数len()

a = "Hello, World!" print(len(a))  output   13

检查字符串

要检查字符串中是否存在某个短语或字符,我们可以使用关键字 in

检查以下文本中是否存在“free”:  txt = "The best things in life are free!" print("free" in txt)  output   true
txt = "The best things in life are free!" if "free" in txt:   print("Yes, 'free' is present.")

not in

要检查某个短语或字符是否不存在字符串中,我们可以使用关键字not in

检查以下文本中是否不存在“expensive”:  txt = "The best things in life are free!" print("expensive" not in txt)  output   true 表示不存在expensive
仅当不存在“expensive”时才打印:  txt = "The best things in life are free!" if "expensive" not in txt:   print("No, 'expensive' is NOT present.")

切片

您可以使用切片语法返回一系列字符。

指定起始索引和结束索引(以冒号分隔),以返回字符串的一部分。

获取位置 2 到位置 5 的字符(不包括):  b = "Hello, World!" print(b[2:5])

从头开始切片

通过省略起始索引,范围将从第一个字符开始:

获取从起始到位置 5 的字符(不包括):  b = "Hello, World!" print(b[:5])

切片至末端

通过省略结束索引,范围将到达末尾:

获取从位置 2 开始一直到末尾的字符:  b = "Hello, World!" print(b[2:])

负索引切片

使用负索引从字符串末尾开始切片:

From: "o" in "World!" (position -5)  To, but not included: "d" in "World!" (position -2):  b = "Hello, World!" print(b[-5:-2])  output   orl 表示输出从o到l 三个字符

大写

该upper()方法返回大写的字符串:  a = "Hello, World!" print(a.upper())

 小写

该lower()方法返回小写的字符串:  a = "Hello, World!" print(a.lower())

删除空格

空格是实际文本之前和/或之后的空格,通常您想要删除这个空格。

该strip()方法将删除开头或结尾的所有空格:  a = " Hello, World! " print(a.strip()) # returns "Hello, World!"

替换字符串 

该replace()方法用另一个字符串替换一个字符串:  a = "Hello, World!" print(a.replace("H", "J"))

分割字符串

split()方法返回一个列表,其中指定分隔符之间的文本成为列表项。

如果该split()方法找到分隔符的实例,则将字符串拆分为子字符串:  a = "Hello, World!" print(a.split(",")) # returns ['Hello', ' World!']  

字符串连接

要连接或合并两个字符串,可以使用 + 运算符。

将变量a与变量 合并b到变量中c:  a = "Hello" b = "World" c = a + b print(c)   要在它们之间添加空格,请添加" ":  a = "Hello" b = "World" c = a + " " + b print(c)

 F- string

F-String 是在 Python 3.6 中引入的,现在是格式化字符串的首选方式。

要将字符串指定为 f 字符串,只需f在字符串文字前面放置一个,并添加花括号{}作为变量和其他操作的占位符。

​ 创建一个 f 字符串:  age = 36 txt = f"My name is John, I am {age}" print(txt)   输出  My name is John, I am 36 如果不用f字符串,则失败  ​  price = 59 txt = f"The price is {price} dollars" print(txt)  输出 The price is 59 dollars   通过添加冒号:和合法的格式类型来包含修饰符,例如, .2f这表示带有 2 位小数的定点数:   显示价格到2位小数:  price = 59 txt = f"The price is {price:.2f} dollars" print(txt)  输出  The price is 59.00 dollar
 ​在占位符中执行数学运算,并返回结果:  txt = f"The price is {20 * 59} dollars" print(txt)  输出 The price is 1180 dollars

 Python转义字符

    广告一刻

    为您即时展示最新活动产品广告消息,让您随时掌握产品活动新动态!