python基础操作

news/2024/9/18 20:56:59/ 标签: python, 开发语言, 网络安全

在这里插入图片描述

python_2">python基础

仅仅打印输出 hello world 是不够的,对吧?你想要做的远不止这些 —— 你想要得到一些输入,操作它并从中得到一些东西。

1. 注释

注释# 符号右侧的任何文本,主要用作程序读者的注释。

python">print('hello world')        # 注意,print 是一个函数。

或者:

python">#注意,print 是一个函数。
print('hello world')

或者

python">'''
我是
多行注释
'''"""
我也是
多行注释
"""

2. 变量

2.1 什么是变量?

变量就是可以变化的量,这个量指的是事物的状态,比如说人的年龄,今天的天气啊,你的发量啊,哈哈哈。

在计算机中变量指的是 内存中的一段空间

2.2 为什么要有变量?

为了让计算机能够像人一样去记忆事物的某种状态,并且状态是可以发生变化的。

详细地说:

程序执行的本质就是一系列状态的变化,变化是程序执行的直接体现,所以我们需要有一种机制能够反映或者说是保存下来程序执行时状态,以及状态的变化。

2.3 怎么使用变量?

变量一定是,先定义后使用。

变量的三大组成部分,如下图

image-20230820010053237

解释器执行到变量定义的代码时会申请内存空间存放变量值,然后将变量值的内存地址绑定给变量名,以变量的定义name = "luze"为例

python"># 定义一个变量
name = "luze"

这样我们就定义了一个变量,定义变量的本质就是申请在内存中开辟一块空间存放变量值,那之前我们说过,你既然存在内存中,怎么取出来用呢?就是通过变量名,变量名指向的就是变量值存放的内存地址,我们可以拿着地址去访问值。

python"># 定义一个变量
name = "ymn"
print(name)

2.4 变量名的命名规范

  • 变量名只能由 字母、数字、下划线 组成。

  • 变量名不能以数字开头。

  • 变量名不能是Python内置关键字,如:

    python">‘and,as,assert,break,class,continue,def,del,elif,else,except,exec,finally,for,from,global,if,import,in,is,lambda,not,or,pass,print,raise,return,try,while,with,yield’可以通过
    import keywordprint(keyword.kwlist)    # 打印所有的关键字
    

命名的两种风格

python"># 风格一:驼峰体
AgeOfTony = 56 
NumberOfStudents = 80# 风格二:纯小写+下划线(在python中,变量名的命名推荐使用该风格)
age_of_tony = 56 
age = 18
number_of_students = 80# 推荐
变量的命名是见名知意

变量名的不推荐命名(虽然程序不会报错,但是别人看到这样的命名一定会,呵呵的)

  • 采用拼音,用汉字命名,变量名过长,这些都是不推荐的,实际开发中,一定不要采用这种。

3. is 与 ==

3.1 id

之前我们讲到过变量名绑定的是变量值的内存地址,那么不同的变量名可能绑定的内存地址是不同的,那么怎么能体现这一点呢?python解释器给我们提供了**id()**这个函数。(函数后面会介绍)通过id(变量名) 会返回一串id号码,这串id号码就对应着这个变量值的内存地址。那么我们就可以通过比较id号码,来判断不同变量名指向的内存地址是否相同。id( )返回对象当前的内存地址,内存地址不同id自然不同。

python">x = 'ymn'
y = 'alex'
print(id(x))  # 3102991623032
print(id(y))  # 3102991623032

3.2 is

比较的是左右两边的id是否相等

python">x = '100'
y = x
print(x is y) # True

3.3 ==

比较的是左右两边的值是否相等

python">x = '10'
y = '10'
print(x == y) # True

总结: id相等,即内存地址必然相等,即值必然相等。但是值相等,但id不一定相等,内存地址也不一定相等。

4. 常量

4.1 什么是常量?

常量就是不变的量,但是在python中是没有常量概念的,人们约定俗成用全部大写的英文单词代表常量。

python">NAME = "我是一个常量"

4.2 为什么要有常量?

在程序运行过程中,有些值是固定的、不应该被改变,比如圆周率 3.141592653…

4.3 怎么使用常量?

在Python中没有一个专门的语法定义常量,约定俗成是用全部大写的变量名表示常量。如:PI=3.14159。所以单从语法层面去讲,常量的使用与变量完全一致。

5.行与缩进

Python 最具特色的就是使用缩进来表示代码块,不需要使用大括号 {}。缩进的空格数是可变的,但是同一个代码块的语句必须包含相同的缩进空格数。缩进不一致,会导致运行错误。

python">if True:print ("True")
else:print ("False")

Python 通常是一行写完一条语句,但如果语句很长,我们可以使用反斜杠 \ 来实现多行语句

python">total = item_one + \item_two + \item_three

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

python">total = ['item_one', 'item_two', 'item_three','item_four', 'item_five']

输入输出

1. Print()函数方法

格式化输出

python">>>>str = "the length of (%s) is %d" %('warsec',len('warsec'))
>>> print(str)
the length of (warsec) is 6
符 号描述
%c格式化字符及其ASCII码
%s格式化字符串
%d格式化整数
%u格式化无符号整型
%o格式化无符号八进制数
%x格式化无符号十六进制数
%X格式化无符号十六进制数(大写)
%f格式化浮点数字,可指定小数点后的精度
%es格式化浮点数
%E作用同%e,用科学计数法格式化浮点数
%g%f和%e的简写
%G%f 和 %E 的简写
%p用十六进制数格式化变量的地址

image-20240828134638999

image-20240828134958670

Print不换行

在 Python 中 print 默认是换行的,想不换行你应该写成 print(i, end = '' )

python">>>> for i in range(1,6):
...     print(i,end="")
...
12345>>>

2.输入函数Input

Python3.x 中 input() 函数接受一个标准输入数据,返回为 string 类型

**注意:**在 Python3.x 中 raw_input() 和 input() 进行了整合,去除了 raw_input( ),仅保留了input( )函数,其接收任意任性输入,将所有输入默认为字符串处理,并返回字符串类型。

语法格式:变量 = input("提示信息")

接收单个值

python">>>>a = input("input:")
input:123                 # 输入整数
>>> type(a)
<class 'str'>             # 字符串
>>> a = input("input:")    
input:runoob              # 正确,字符串表达式
>>> type(a)
<class 'str'>             # 字符串

接收多个值

python">#!/usr/bin/python
#输入三角形的三边长
a,b,c = (input("请输入三角形三边的长:").split())
a= int(a)
b= int(b)
c= int(c)#计算三角形的半周长p
p=(a+b+c)/2#计算三角形的面积s
s=(p*(p-a)*(p-b)*(p-c))**0.5#输出三角形的面积
print("三角形面积为:",format(s,'.2f'))

数据类型

1160380-20171121090724149-2013992870

1 .数字型

1.1 int整型

1.1.1作用

用来记录用整数记录的状态, 比如年份, 年龄 等

1.1.1 定义
python">age = 20year = 1999

1.2 float浮点型

1.2.1 作用

用来记录用小数记录的状态,比如某些商品的价格,存款等

1.2.2 定义
python">price = 98.88money = 3999.54

1.3 数字类型的使用

1.3.1 数学运算
python">a = 99
b = 1
c = a + b
print(c) # 100
1.3.2 比较大小
python">x = 100
y = 200print(y>x) # True

顺便提一嘴, float类型 可以和 int类型 做四则运算 结果都是 float类型

注意:

python">x = 99.99
y = 0.01print(x+y) # 100.0
# x + y == 100 False

2. 字符串类型

字符串可以进行的操作:+ *

python">+:一个字符串和另一个字符串相加是将字符串进行拼接
*:字符串可以乘以数字,相当于是多少倍的输出

在Pyhon中一切皆对象,每一个字符串都是一个对象;

1:使用dir()可以查看对象的的使用方法

2:使用help()可以查看某个方法的帮助信息

image-20240828185346184


http://www.ppmy.cn/news/1518098.html

相关文章

手机ip频繁跳动的原因是什么?手机ip地址老是变怎么解决

在当今数字化时代&#xff0c;‌手机已成为我们生活中不可或缺的一部分。‌然而&#xff0c;‌有些用户可能会遇到手机IP地址频繁变动的问题&#xff0c;‌这不仅可能影响网络连接的稳定性&#xff0c;‌还可能对特定的在线活动造成困扰。‌本文将深入探讨手机IP频繁跳动的原因…

langchain入门系列之六 使用langchain构建PDF解析助手

本文将介绍如何使用langchain构建一个pdf解析助手&#xff0c;在此文中你将学习到langchain如何与web应用(fastapi)相结合&#xff0c;向量持久化等知识&#xff0c;话不多说&#xff0c;现在开始。 安装环境 pip install fastapi pip install python-dotenv pip install uv…

智能优化特征选择|基于鹦鹉优化(2024年新出优化算法)的特征选择(分类器选用的是KNN)研究Matlab程序 【优化算法可以替换成其他优化方法】

智能优化特征选择|基于鹦鹉优化&#xff08;2024年新出优化算法&#xff09;的特征选择&#xff08;分类器选用的是KNN&#xff09;研究Matlab程序 【优化算法可以替换成其他优化方法】 文章目录 一、PO基本原理PO基本原理基本流程示例应用 二、实验结果三、核心代码四、代码获…

苹果 iOS / iPadOS 18 beta8和iOS / iPadOS 18.1 beta3版本更新

苹果今日向iPhone和iPad用户推送了 iOS / iPadOS 18 开发者预览版 Beta 8 更新&#xff08;内部版本号&#xff1a;22A5350a&#xff09;和iOS / iPadOS 18.1 开发者预览版 Beta 3 更新&#xff08;内部版本号&#xff1a;22B5034e&#xff09;&#xff0c;本次更新距离上次发布…

c语言(二叉树)

第4章 二叉树和BST 树与二叉树 基本概念 树是一种非线性结构&#xff0c;其严格的数学定义是&#xff1a;如果一组数据中除了第一个节点&#xff08;第一个节点称为根节点&#xff0c;没有直接前驱节点&#xff09;之外&#xff0c;其余任意节点有且仅有一个直接前驱&#xff…

华为OD机试(C卷,200分)- 园区参观路径

题目描述 园区某部门举办了Family Day,邀请员工及其家属参加; 将公司园区视为一个矩形,起始园区设置在左上角,终点园区设置在右下角; 家属参观园区时,只能向右和向下园区前进,求从起始园区到终点园区会有多少条不同的参观路径。 输入描述 第一行为园区的长和宽; 后…

为什么要选择JDK15.0.2

JDK16开始&#xff0c;Oracle移除了JDK中JavaSE的很多类。导致我们用IDK15以后的版本做项目&#xff0c;Maven导入的一些第三方依赖会出现找不到ava工具类的情况&#xff0c;而且更有甚者异常信息也不会提示找不到哪些类&#xff0c;直接就报运行错误。这就让我们调试程序无从下…

【软件文档】软件质量保证计划书(Word完整版)

1 概述 2 质量目标 3 项目基本情况 4 资源 4.1 人员 4.1.1 组织结构 4.1.2 职责 4.2 工具及设施 5 质量保证的主要工作 6 质量保证工作量估算 7 质量保证工作提交的产物 8 变更管理 9 评价标准 10 形成的记录 软件全套资料部分文档清单&#xff1a; 工作安排任务书&#xff0c;…

aspose.pdf实现图片转pdf

/*** 图片转pdf*/ public static void ImagesToPdf(){String folderPath "D:\\Desktop\\xuanku";File folder new File(folderPath);List<String> images new ArrayList<>();// 检查文件夹是否存在if (folder.exists() && folder.isDirectory…

【论文速读】| ARVO: 开源软件可重现漏洞的全景图

本次分享论文&#xff1a;ARVO: Atlas of Reproducible Vulnerabilities for Open Source Software 基本信息 原文作者&#xff1a;Xiang Mei, Pulkit Singh Singaria, Jordi Del Castillo, Haoran Xi, Abdelouahab (Habs) Benchikh, Tiffany Bao, Ruoyu Wang, Yan Shoshitai…

js基础速成-条件语句

条件语句 条件语句用于根据不同的条件做出决策。 默认情况下&#xff0c;JavaScript 中的语句是从上到下顺序执行的。如果处理逻辑需要&#xff0c;可以通过两种方式改变执行的顺序&#xff1a; 条件执行&#xff1a;如果某个表达式为真&#xff0c;将执行一个或多个语句的代…

一起搭WPF之列表数据绑定

一起搭WPF之列表数据绑定 1 前言2 数据绑定2.1 前端2.2 后端实现2.2.1 界面后台2.2.2 模型与逻辑 3 问题3.2 解决 总结 1 前言 之前已经简单介绍了列表的大致设计&#xff0c;在设计完列表界面后&#xff0c;我们可以开展列表的数据绑定&#xff0c;在前端显示我们的数据&…

房产报备小程序房产报备系统源码搭建方案

房产客户报备小程序开发&#xff0c;php开发语言&#xff0c;前端是uniapp。 房产报备小程序三个端&#xff1a;报备端&#xff08;经纪人报备客户&#xff09;&#xff0c;确客端&#xff08;员工确认报备的客户&#xff09;&#xff0c;管理后台 一 报备端 经纪人报备客户…

特异性心肌细胞靶向肽(PCM);WLSEAGPVVTVRALRGTGSW;CAS:771479-86-8

【特异性心肌细胞靶向肽(PCM) 简介】 特异性心肌细胞靶向肽&#xff08;PCM&#xff09;是一种设计用于识别和结合心肌细胞特有的受体或分子标记的多肽序列。PCM可以通过其氨基酸序列的特定配置和表面特性实现对心肌细胞的选择性靶向&#xff0c;从而在心脏病治疗中递送药物、作…

Linux文件编程(进阶)

文章目录 Linux文件编程内核数据结构重定向dup2函数代码示例&#xff1a;将定义为输入重定向符号&#xff0c;将-定义为输出重定向符号 fcntl函数代码示例&#xff1a;使用O_APPEND标志位保证原子操作 I/O处理方式代码示例&#xff1a;阻塞I/O模型代码示例&#xff1a;非阻塞I/…

Nosql数据库redis集群配置详解

一、Redis的安装 环境介绍&#xff1a; 一主双从&#xff1a;10&#xff08;redis-node1&#xff09;主&#xff0c;20&#xff08;redis-node2&#xff09; 30&#xff08;redis-node3&#xff09;从——使用的是红帽9.1系统 源码安装redis [rootredis-node1 ~]# tar zxf red…

Ceruletide 雨蛙素;雨蛙肽;硫酸化蓝肽 简介

目录号 M9316 Ceruletide 雨蛙素&#xff1b;雨蛙肽&#xff1b;硫酸化蓝肽 Ceruletide (Caerulein) 是从澳大利亚青蛙皮肤中分离的生物活性十肽&#xff0c;是一种缩胆囊素受体 (cholecystokinin receptor) 激动剂。此外&#xff0c;Ceruletide还可用于构建小鼠急性胰腺炎模型…

强烈推荐!大模型辅助软件开发

图书推荐 作者介绍 很喜欢作者在书上的这句话了&#xff1a;是人类工程师的能力&#xff0c;而不是大模型的能力&#xff0c;决定了大模型协作式开发的上限。 本书内容 软件开发正在经历一场前所未有的范式变革。人工智能的飞速发展&#xff0c;特别是大型语言模型所取得的成…

tortoisegit突然停止工作

TortoiseGit突然停止工作可能由多种原因引起&#xff0c;以下是一些可能的原因及相应的解决方案&#xff1a; 可能原因及解决方案 Git进程冲突 描述&#xff1a;当TortoiseGit检测到有其他Git进程正在运行或之前崩溃未清理完全时&#xff0c;可能会出现冲突&#xff0c;导致T…

鸿蒙开发5.0【基于Swiper的页面布局】

场景一&#xff1a;Swiper页面支持自定义动画 方案&#xff1a; 给Swiper组件设置.nextMargin(50).prevMargin(50)属性。 给Swiper组件添加onChange事件&#xff0c;设置当前this.currentIndexindex&#xff0c;当currentIndex为首页或者尾页时&#xff0c;设置上一张以及下一…