Python-初识Python

  • 前言:在这篇博客当中,我们将步入Python知识的殿堂,Python以其简单、易学、开发效率高在近些年的发展可谓是迅猛,在许多领域都可以见到它的场景,例如:人工智能/机器学习、大数据开发、后端开发等都会用到。

1.认识Python 

1.1 什么是编程语言

Python和我们的C语言一样也是一门编程语言,那何为编程语言呢?

  • 所谓编程语言就是我们和计算机进行交流的一种语言工具,计算机是听不懂我们的语言,它只能识别0和1的二进制代码,但是只有编程语言计算机还是执行不了我们想要的功能,需要一个翻译工具(解释器或编译器)将代码翻译成二进制,那么此时我们就可以与计算机进行通畅的交流了。在C语言中我们所使用的VS编译器也是这样的道理。

1.2 第一个Python程序

 使用Python语言,向世界说你好。

print("hello world!")

1.3 编写Python所使用的工具

使用Python编程语言需要Python解释器来使我们的程序变成计算机所能读懂的二进制代码,从而和计算机进行交流,但仅仅一个Python解释器进行编写Python代码还是比较不方便,我们还需要一个PyCharm这样一个集成开发环境,这样我们编写程序会很方便。以下是PyCharm的一些快捷键:

ctrl+ alt + s:打开软件设置                                            shift +f6:重命名文件    
ctrl+d:复制当前行代码                                                 ctrl+a:全选
shift +alt+上下:将当前行代码进行上下移动                 ctrl+c\v\x:复制、粘贴、剪切
crtl+ shift +f10:运行当前代码文件                                ctrl+f:搜索

2.Python基础语法

2.1 字面量

字面量:在代码中,被写下来的的固定的值称之为字面量

2.2 注释

注释:在程序代码中对程序代码进行解释说明的文字。

作用:注释不是程序,不能被执行,只是对程序代码进行解释说明,让别人可以看懂程序代码的作用,能够大大增强程序的可读性。

注释的分类:

  • 单行注释:以#开头,#右边 的所有文字当作说明,而不是真正要执行的程序,起辅助说明作用,注意:(1)与C语言代码的区别C语言代码的注释是以//为开头(2)#号和注释内容一般建议以一个空格隔开。
  • 多行注释:以 一对三个双引号引起来 ("""注释内容""")来解释说明代码

2.3 变量

变量:在程序运行时,能储存计算结果或能表示值的抽象概念 。

变量的定义格式:变量名 =变量值

变量的特征:变量的值可以改变

 2.4 数据类型

常用的数据类型:

type()语句:我们可以通过type()语句来得到数据的类型,type(被查看类型的数据)

使用方式有以下几种:

  • 在print语句中,直接输出类型信息
  • 用变量存储type()的结果 (返回值) 
  • 查看变量中存储的数据类型信息
print(type(666))
int_type = type(666)
print(int_type)
num = 666
print(type(num))

 这里需要注意在python语言中变量有类型吗?

  • 答案是没有的,这里需要与C语言相区分开来,如:我们可能会说:字符串变量,但要知道不是变量是字符串,而是它存储了字符串。

2.5 数据类型转换 

为什么要进行类型转换呢? 事实上我们在很多场合当中都会运用到类型转换,例如:

  • 从文件中读取的数字,默认是字符串,我们需要转换成数字类型
  • input()语句,默认结果是字符串,若需要数字也需要转换
  • 将数字转换成字符串用以写出到外部系统

如何进行数据类型转换呢? 下面介绍一些常见的数据类型转换的语句:

这里需要注意几个问题:

  • 任何类型都可以转换成字符串吗?这个答案是肯定的,所有字符带上""就是字符串
  • 字符串可以随意转换成数字吗?答案是否定的,想要将字符串转换成数字,必须要求字符串内的内容都是数字。
  • 浮点数转整数会丢失什么?会丢失精度,丢掉小数部分

2.6 标识符  

标识符:是用户在编程的时候所使用的一系列名字,用于给变量、类、方法等命名 。

在python中标识符是不可以随便命名的,它有以下规则:

1)内容限定。 2)大小写敏感。 3)不可使用关键字。

  • 内容限定:英文、中文、数字、下划线 (_) ,其余任何内容都不被允许。注意:数字不可以开头
  • 大小写敏感:假如命名变量:Book,book,它们是不同的变量。
  • 不可使用关键字:这点和C语言类似,每个关键字都有它特殊的功能,不能被占用。 

变量的标识符命名规范:1)见名知意 、2)下划线命名法 、3)英文字母全小写 

2.7 运算符 

算术运算符:

赋值运算符:

复合赋值运算符: 

2.8 字符串扩展 

字符串的三种定义方式

  • 1)单引号定义法:name = '张三'
  • 2)双引号定义法:name = "张三"
  • 3)三引号定义法:name = """张三"""

注意:如果我想要定义的字符串本身是包含单引号、双引号自身呢?

答案:

  • 单引号定义法,可以内含双引号
  • 双引号定义法,可以内含单引号
  • 可以使用转移字符 (\)来将引号解除效用,变成普通字符串

字符串拼接

使用+就可以实现这个功能。注意:简单的拼接只能是字符串与字符串进行拼接。

这里就会遇到这样的问题,我要是让字符串和数字进行拼接到一块怎么办?此时就会用到接下来的知识点叫做字符串格式化。 

字符串格式化

字符串格式化的语法:

name = "张三"
age = 15
message = "%s年龄是: %d" % (name, age)
print(age)

其中:%s:1)% 表示:我要占位。 2)s  表示:将变量变成字符串放入占位的地方

所以,综合起来的意思就是:我先占个位置,等一会有个变量过来,我把它变成字符串放到占位的位置。%d也是同样的道理。注意:多个变量占位变量要用括号括起来并按照占位的顺序填入。

其中格式符号与C语言是相类似的:

字符串格式化的精度控制

我们可以使用辅助符号"m.n"来控制数据的宽度和精度:

  • m,控制宽度,要求是数字(很少使用),设置的宽度小于数字自身,不生效
  • .n,控制小数点精度,要求是数字,会进行小数的四舍五入

看如下例子:

  • %5d:表示将整数的宽度控制在5位,如数字11,被设置为5d,就会变成:[空格][空格][空格]11,用三个空格补足宽度
  • %5.2f:表示将宽度控制为5,将小数点精度设置为2,小数点和小数部分也算入宽度计算。如,对11.345设置了%7.2f后,结果是:[空格][空格]11.35。2个空格补足宽度,小数部分限制2位精度后,四舍五入为 .35
  • %.2f: 表示不限制宽度,只设置小数点精度为2,如11.345设置%.2f后,结果是11.35

下面讲述一个快速格式化的方法: 

 通过语法:f“内容{变量}”的格式来快速格式化。看如下例子:

name = "张三"
age = 15
print(f"我是{name}, 我的年龄是:{age}")

表达式的格式化

直接上代码:

print("张三的年龄是:%d" % (4*4))
print("张三的年龄是:(4*4)" )

2.9 数据输入

input语句:它的功能相当于C语言当中的scanf语句,是从键盘当中读取输入,不过它的使用比较简单,直接input()就可以。需要注意以下几点:

  • 在input的括号内可以直接填写提示内容,这些内容会被打印下来。
  • 无论键盘输入什么类型的数据,获取到的数据永远都是字符串类型,因此如果我们想要得到整型数据,就需要进行数据类型转换。
name = input("请输入你的名字:")
age = int(input("请输入你的年龄:"))print("我是%s, 我的年龄是:%d" %(name, age))
print(f"我是{name}, 我的年龄是:{age}")

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.xdnf.cn/news/1554707.html

如若内容造成侵权/违法违规/事实不符,请联系一条长河网进行投诉反馈,一经查实,立即删除!

相关文章

绝对值得收藏!分享7款ai写作论文免费一键生成网站

在当前的学术研究和写作过程中,AI写作工具已经成为了许多研究者和学生的重要助手。这些工具不仅能够提高写作效率,还能帮助生成高质量的论文内容。以下是七款免费的AI写作论文生成器,其中特别推荐千笔-AIPassPaper。 1.千笔-AIPassPaper 千…

第十二届蓝桥杯嵌入式省赛程序设计题解析(基于HAL库)(第二套)

一.题目分析 (1).题目 (2).题目分析 1.按键功能分析 a.B1界面切换 b.B2每次按下R加2 c.B3每次按下R减2 d.LED控制按键 2.信号输出功能分析 a.PA7信号输出-----信号的输出就需要使用到输入捕获和输出比较功能 b.输出信号的…

融媒体服务中PBO进行多重采样抗锯齿(MSAA)

如果不理解pbo 那先去了解概念,在此不再解释,这是我为了做融合服务器viewpointserver做的一部分工作,融合服务器的功能是将三维和流媒体,AI融合在一起,viewpointserver会直接读取三维工程的文件,同时融合rt…

BUCK的工作模式:CCM BCM DCM

连续导通模式CCM CCM工作状态 一个开关周期内,电感内的电流始终大于0,电感在DCDC整个工作周期中一直处于充电放电状态;即使DCDC的功率开关管断开时(Toff),电感中一直有电流流过; 功率开关管闭合…

分布式学习02-CAP理论

文章目录 CAP三指标一致性可用性分区容错性 CAP不可能三角P存在的必要性CP理论AP理论 CAP理论对分布式系统的特性做了高度抽象,将其抽象为一致性、可用性、分区容错性。 并对特征间的冲突做了总结:CAP不可能三角。 CAP三指标 一致性(Consis…

PostgreSQL Docker Error – 5432: 地址已被占用

PostgreSQL Docker Error – 5432: 地址已被占用 今天在学习【Spring Boot React】价值79.9美元,全栈开发,搭建个人网站、做毕业设计、试试这套课程第17~21节视频的时候,发现运行docker run --name demo-postgres -e POSTGRES_PASSWORDpass…

循环生成对抗网络——CycleGAN

系列文章目录 GAN生成对抗网络介绍 目录 系列文章目录 前言 二、应用 三、解决的问题 1、图像转译任务 2、原理 四、调试好的源码 前言 CycleGAN(循环生成对抗网络)是一种用于图像到图像的转换的深度学习模型,由Jun-Yan Zhu等人在20…

Redis数据库与GO(一):安装,string,hash

安装包地址:https://github.com/tporadowski/redis/releases 建议下载zip版本,解压即可使用。解压后,依次打开目录下的redis-server.exe和redis-cli.exe,redis-cli.exe用于输入指令。 一、基本结构 如图,redis对外有个…

【ubuntu】ubuntu20.04安装chrome浏览器

1.下载 https://download.csdn.net/download/qq_35975447/89842972 https://www.google.cn/chrome/ 2.安装 sudo dpkg -i google-chrome-stable_current_amd64.deb 3.使用

【AI学习】Mamba学习(一):总体架构

论文:《Mamba: Linear-Time Sequence Modeling with Selective State Spaces》 作者1:Albert Gu,现在是CMU(卡内基梅隆大学)助理教授,曾在DeepMind 工作。多年来一直推动SSM架构发展。 作者2:Tri Dao,现为…

文件上传之%00截断(00截断)以及pikachu靶场

pikachu的文件上传和upload-lab的文件上传 目录 mime type类型 getimagesize 第12关%00截断, 第13关0x00截断 差不多了,今天先学文件上传白名单,在网上看了资料,差不多看懂了,但是还有几个地方需要实验一下&#…

老年人意外跌倒感知技术

意外跌倒是导致老年人仙游的6大原因之一,尤其多余80岁以上的老年人。跌倒已成为我国 65 岁以上老年人因伤致死的首位原因(来源:IT之家)。 跌倒最容易发生在两个地方,卫生间和过道。主要可能是卫生间没有安装扶手&…

【案例】平面云

教程案例视频:Unity Shader Graph - 云教程 开发平台:Unity 2022 开发工具:Unity ShaderGraph   一、效果展示 二、ShaderGraph 路线图 三、案例分析 核心思路:使用 Noise(噪声)模拟云层状态   3.1 说明…

C++异步操作实现线程池

文章目录 std::future用法async函数promise::get_futurepackaged_task::get_future 线程池实现 std::future std::future是C11标准库中的一个模板类,表示异步操作的结果 当我们在进行多线程中使用异步任务时,std::future是用来帮我们在需要的时候获取任务执行的结果 他的一个…

基于spring boot的篮球论坛系统

作者:计算机搬砖家 开发技术:SpringBoot、php、Python、小程序、SSM、Vue、MySQL、JSP、ElementUI等,“文末源码”。 专栏推荐:SpringBoot项目源码、Vue项目源码、SSM项目源码、微信小程序源码 精品专栏:Java精选实战项…

快停止这种使用U盘的行为!

前言 现在各行各业的小伙伴基本上都需要用电脑来办公了,你敢说你不需要用电脑办公? 啊哈哈哈,用iPad或者手机办公的也算。 有些小伙伴可能经常996,甚至有时候都是007。有时候到了下班时间,工作还没做完,…

图文深入理解Oracle DB企业级集中管理神器-GC的安装和部署

值此国庆佳节,深宅家中,闲来无事,就多写几篇博文。今天继续宅继续写。 本文承接上篇,介绍GC的安装和部署。咱们不急,慢慢来,饭要一口一口地吃才能吃得踏实自然。 限于篇幅,本节将重点介绍关键步…

VRRP协议个人理解+报文示例+典型配置-RFC2338/RFC3768/RFC5798/RFC9568

个人认为,理解报文就理解了协议。通过报文中的字段可以理解协议在交互过程中相关传递的信息,更加便于理解协议。 因此本文将在VRRP协议报文的基础上进行介绍。 VRRP协议发展 关于VRRPv2基本原理,可重点参考2004年发布的RFC3768-Virtual Ro…

深入理解NumPy库:常用函数详解与数组操作指南

在数据科学和数值计算领域,NumPy无疑是一个强大的工具,它为Python提供了高效的多维数 组处理能力。无论是进行数据分析、构建机器学习模型,还是进行复杂的科学计算,NumPy都是 不可或缺的核心库之一。 numpy.array 是 NumPy 库中…

UART通信—基于江科大源码基础进行的改进和解析

我就不讲理论了,CSDN上大佬属实多,我就只讲代码了,串口的基本理论,大家去看其他大佬写的吧 一、源文件的组成 1、包含的头文件 stm32f10x.h 是STM32F10x系列微控制器的标准外设库(Standard Peripheral Library&…