Python3-基本用法介绍及基本数据类型

Python3-基本用法介绍及基本数据类型

1. 基本用法

1.1 字符编码

默认情况下,Python 3 源码文件以 UTF-8 编码,所有字符串都是 unicode 字符串。

1.2 标识符

标识符:一般用作变量、函数名
①首字符为
字母
下划线_
②由字母、数字、下划线组成
③区分大小写
④在python3中,可以用中文或者非ASCII作为标识符。

1.3 保留字

# 查看保留字,保留字是python内置的,不能用作标识符。
# Python Console窗口
import keyword   # 导入模块
keyword.kwlist   # 保留字列表
['False', 'None', 'True', '__peg_parser__', 'and', 'as', 'assert', 'async', 'await', 'break', 'class', 'continue', 'def', 'del', 'elif', 'else', 'except', 'finally', 'for', 'from', 'global', 'if', 'import', 'in', 'is', 'lambda', 'nonlocal', 'not', 'or', 'pass', 'raise', 'return', 'try', 'while', 'with', 'yield']

# .py文件窗口
import keyword
print(keyword.kwlist)

1.4 注释

# 单行注释

'''
多行注释
'''

"""
多行注释
"""

1.5 缩进

python是使用缩进来标识代码块,不需要使用{}。

缩进的空格数是可变的,但是同一个代码块的语句必须包含相同的缩进空格数

# 正确写法:
if True:
    print("a")
    print("b")
else:
    print("aa")
    print("bb")
    
# 错误写法:
if True:
    print("a")
    print("b")
else:
    print("aa")
        print("bb")

1.6 多行语句

a = b = c = d = 1
total = a + \
        b + \
        c + \
        d
print(total)

# 在[] {} ()中的多行语句,不需要使用反斜杠\

1.7 数字(number)类型

类型 备注、示例
int 整数类型:1 2 3
bool 布尔类型:True False
float 浮点型:1.23 2E-2
complex 复数:1+2j i+j

1.8 字符串(string)

  • python中单引号和双引号使用完全相同。

  • 使用三引号(’’'或""")可以指定一个多行字符串。

  • 转义符 ‘\’

  • 反斜杠可以用来转义,使用r可以让反斜杠不发生转义。r’\n’
    在这里插入图片描述

  • 按字面意义连接字符串,如:"this " "is " “string.”
    在这里插入图片描述

  • 字符串可以用 + 运算符连接在一起,用 * 运算符重复。
    在这里插入图片描述

  • Python 中的字符串有两种索引方式,从左往右以 0 开始,从右往左以 -1 开始。

  • Python中的字符串不能改变。

  • Python 没有单独的字符类型,一个字符就是长度为 1 的字符串。

  • 字符串的截取的语法格式如下:变量[头下标:尾下标:步长]

name = 'abcdefg'
print(name[0:-1])     # abcdef  索引从左到右第一个是0,从右到左第一个是-1
print(name[1:-1])     # bcdef
print(name[1:3])      # bc
print(name[1:5])      # bcde
print(name[1:5:2])    # bd      1:5即第2 3 4 5个字符,2为步长,即每两个截取一个,也就是第2 4个字符。

1.9 空行

空行可以用在函数之间、类之间、函数和类之间,用于表示一段新的代码的开始。不用也不会报错,但是看起来不太好,使用空行,有利于日后代码的维护和重构。

1.10 接收用户输入

在这里插入图片描述

1.11 同一行显示多条语句

多行较短语句放在一行写,需要用分号;隔开。
在这里插入图片描述

1.12 代码块

在python中,缩进相同的一组语句构成一个代码块,也称代码组。

1.13 print输出

# 默认换行输出
print('haha')
print('xixi')

# 不换行输出
print('haha',end=" ")
print('xixi',end=" ")

print()   # 输出一个换行

在这里插入图片描述

1.14 模块导入

  • 导入整个模块:import mod_name
  • 导入模块的某个函数:from mod_name import fun_name
  • 导入模块的某几个函数:from mod_name import fun1_name fun2_name
  • 导入模块的所有函数:from mod_name import *

在这里插入图片描述

# 导入模块
import sys
print(sys.argv)   # 可以看到变量argv是一个列表,列表中只有一个值,是python的main脚本路径
print(sys.path)   # 可以看到变量path也是一个列表,列表中有许多值,各个值之间用逗号,隔开,这些值是python的环境变量

# 运行结果
['E:/py-project1/main.py']   # sys.argv
['E:\\py-project1', 'E:\\py-project1', 'E:\\python\\python39.zip', 'E:\\python\\DLLs', 'E:\\python\\lib', 'E:\\python', 'E:\\py-project1\\venv', 'E:\\py-project1\\venv\\lib\\site-packages']  # sys.path

# 导入某个变量或函数
from sys import argv
print(argv)   # 变量已经导入,不需要使用sys.调用

1.15 命令行查看帮助信息

在这里插入图片描述

2. 基本数据类型

2.1 变量赋值

Python 中的变量不需要声明。每个变量在使用前都必须赋值,变量赋值以后该变量才会被创建。

在 Python 中,变量就是变量,它没有类型,我们所说的"类型"是变量所指的内存中对象的类型。

等号(=)用来给变量赋值。

等号(=)运算符左边是一个变量名,等号(=)运算符右边是存储在变量中的值。

可以多个变量赋予相同的值,可以多个变量赋予不同的值

在这里插入图片描述

2.2 标准数据类型

数据类型 备注 示例 值是否可修改
Number(数字) Python3 支持 int、float、bool、complex(复数)。只有一种整数类型 int,表示为长整型。 在这里插入图片描述
type直接获取类型,isinstance判断是不是int数据类型
不可变
String(字符串) Python中的字符串用单引号 或双引号 " 括起来,同时使用反斜杠 \ 转义特殊字符。
字符串的截取格式:变量[头下标:尾下标:步长]
索引值以 0 为开始值,-1 为从末尾的开始位置。
支持索引和切片,重复*和连接+
示例见1.8 不可变
List(列表) 列表是写在方括号 [] 之间、用逗号分隔开的元素列表。
列表中元素的类型可以不相同,它支持数字,字符串甚至可以包含列表(所谓嵌套)。
列表可以被索引和截取,列表被截取后返回一个包含所需元素的新列表。
截取格式:变量[头下标:尾下标:步长]
支持索引和切片,重复*和连接+
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
可变
Tuple(元组) 元组的元素不能修改。元组写在小括号 () 里,元素之间用逗号隔开。
支持索引和切片,重复*和连接+
在这里插入图片描述 不可变
Set(集合) 集合(set)是由一个或数个形态各异的大小整体组成的,构成集合的事物或对象称作元素或是成员。
可以使用大括号 { } 或者 set() 函数创建集合
基本功能是进行成员关系测试和删除重复元素。
创建一个空集合必须用 set() 而不是 { },因为 { } 是用来创建一个空字典。
在这里插入图片描述 可变
Dictionary(字典) 字典是无序的对象集合。
字典当中的元素是通过键来存取的,而不是通过偏移存取。
字典是一种映射类型,字典用 { } 标识,它是一个无序的 键(key) : 值(value) 的集合。
键(key)必须使用不可变类型。【number string tuple】
在同一个字典中,键(key)必须是唯一的。
在这里插入图片描述 可变

type和isinstance的区别:

在这里插入图片描述

创建一个变量对象和删除一个变量对象:
在这里插入图片描述

数值运算:

在这里插入图片描述

在这里插入图片描述

翻转字符串:

# 定义函数
def reversewords(input):
        inputwords = input.split(" ")   # 字符串按分隔符分割成列表
        print(inputwords)
        inputwords = inputwords[-1::-1]
        print(inputwords)
        output = ' '.join(inputwords)   # 以空格作为分隔符合并列表
        return output

if __name__ == "__main__":
        input = 'I am abong'
        rw = reversewords(input)  # 调用函数
        print(rw)

在这里插入图片描述

空元组和单个元素元组写法:

在这里插入图片描述

集合功能:成员测试和集合运算

set1 = {
    
    'a', 'b', 'c', 'd', 1, 2, 3, 4}
set2 = {
    
    'a', 'b', 'e', 'f', 1, 2, 5, 6,}
if 'a' in set1:
        print('a在集合中')
else:
        print('a不在集合中')
print(set1)
print(set1-set2)  # 差集
print(set1|set2)  # 并集
print(set1 & set2) # 交集
print(set1 ^ set2)  # set1和set2中不同时存在的元素集合。


# 运行结果如下:
a在集合中
{
    
    1, 2, 3, 4, 'b', 'a', 'd', 'c'}
{
    
    'c', 'd', 3, 4}
{
    
    1, 2, 3, 4, 5, 'b', 6, 'f', 'e', 'a', 'd', 'c'}
{
    
    1, 2, 'b', 'a'}
{
    
    3, 4, 5, 6, 'f', 'e', 'd', 'c'}

创建字典:

在这里插入图片描述

dict = {
    
    }
dict[1] = 'a'
dict[2] = 'b'
print(dict)
print(dict[1])      # 通过键索引对应的值
print(dict[2])
print(dict.keys())  # 查看所有键
print(dict.values())  # 查看所有值
print(dict.clear())   # 清空字典
print(dict)

运行结果:
{
    
    1: 'a', 2: 'b'}
a
b
dict_keys([1, 2])
dict_values(['a', 'b'])
None
{
    
    }

2.3 数据类型转换

函数 作用 示例
int(x) x下取整 int(1.2)
float(x) 将x转换为浮点型,精度为1 float(2)
complex(a,b) 创建一个复数,a+bi complex(1,2)
str(x) 将x转换为字符串 str(1)
repr(x) 将x转换为表达式字符串 repr(2)
eval(str) 计算字符串中有效的python表达式,并返回一个对象 eval(‘1+2’)
tuple(s) 将序列 s 转换为一个元组 tuple(‘12345’)
list(s) 将序列 s 转换为一个列表 list(‘abc’)
set(s) 转变为可变集合 set(‘1123’)
dict(s) 创建一个字典,d是一个列表,其元素为(key,value)元组。 dict([(1,‘a’),(2,‘b’)])
frozenset(s) 转换为不可变集合 frozenset(‘1123’)
chr(x) 将一个整数值转换为字符 chr(38)
ord(x) 将一个字符转换为整数值 ord(’&’)
hex(x) 整数转十六进制字符串 hex(32)
oct(x) 整数转八进制字符串 oct(16)

猜你喜欢

转载自blog.csdn.net/weixin_36522099/article/details/109907113