Python第二语言(二、Python语言基础)

news2024/12/27 0:17:32

目录

1. python中常用的6中数据类型

2. Print语句(输出程序)

3. 字面量

4. 注释

5. 变量

6. 数据类型

7. type()语句:查询数据类型

8. 数据类型转换语句

9. 标识符

10. 算术运算符

11. 赋值运算符 && 复合赋值运算符

12. 字符串

12.1 字符串的三种定义方式:

12.2 字符串拼接

12.3 字符串拼接格式化

12.4 字符串格式化精度的控制

12.5 字符串格式化(使用{}引用变量)

12.6 字符串格式化-表达式格式化

13. 数据输入(input,获取键盘输入)

14. 布尔类型(bool)和比较运算符

16. if && else

17. random随机数

18. while循环语句

19. for循环

19.1 for循环使用

19.2 range序列类型语句

19.3 for循环嵌套

20. continue && break


Python第二语言(一、Python start)-CSDN博客

1. python中常用的6中数据类型

类型描述说明
数字(Number)支持:整数(int)、浮点数(float)、复数(complex)、布尔(bool)整数(int),如: 10、-10 浮点数(float),如: 13.14、-13.14 复数(complex),如: 4+3j,以j结尾表示复数 布尔(bool)表达现实生活中的逻辑,即真和假,True表示真False表示假。True本质上是一个数字记作1,False记作0
字符串(String)描述文本的一种数据类型由任意数量的字符组成
列表(List)有序的可变序列Python中使用最频繁的数据类型,可有序记录一堆数据
元组(Tuple)有序的不可变序列可有序记录一堆不可变的Python数据集合
集合(Set)无序不重复集合可无序记录一堆不重复的Python数据集合
字典(Dictionary)无序Key-Value集合可无序记录一堆Key-Value型的Python数据集合

2. Print语句(输出程序)

1. 通过逗号分割,可以写多个的值:

2. print不换行:

在print语句中,加上end=''即可输出不换行;

3. print根据空格对齐:

3. 字面量

1. 掌握字面量的含义:

  • 代码中,被写在代码中的固定的值,称之为字面量;

2. 常见的字面量类型:

  • 我们目前了解:整数、浮点数、字符串这三类即可;

3. 如何基于print语句完成各类字面量的输出:

  • print(字面量),如:

    print(10),输出整数10;

    print(13.14),输出浮点数13.14;

    print("您好世界"),输出字符串:您好世界;;

4. 注释

1. 单行注释:以 #开头,#右边的所有文字当作说明,而不是真正要执行的程序,起辅助说明作用;

2. 多行注释:以 一对三个双引号引起来("""注释内容""")来解释说明一段代码的作用使用方法;

5. 变量

  1. 变量是没有类型的,变量存储数据是表示这个变量存储了这个类型的数据,并不表示变量有类型;
  2. 变量的作用:在程序运行时,能储存计算结果或能表示值的抽象概念;
  3. 变量的定义格式:变量名 = 变量值;
  4. 变量的特征:变量的值可以改变;
  5. 简单的说:变量就是在程序运行时,记录数据用的;
  6. python中如何做减法:使用符号-即可完成(加+、减-、乘*、除/)

6. 数据类型

在学习字面量的时候,我们了解到:数据是有类型的:

类型描述说明
string字符串类型用引号引起来的数据都是字符串
int整型(有符号)数字类型,存放整数如-1,10,0等
float浮点型(有符号)数字类型,存放小数如-3.14,6.66

7. type()语句:查询数据类型

验证数据的类型,通过type()语句来得到数据的类型:

语法:type(被查看类型的数据)

第一种语法:

print(type("您好"))
print(type(666))
print(type(11.22))

第二种语法:

string_type = type("您好")
int_type = type(666)
float_type = type(11.22)
print(string_type)
print(int_type)
print(float_type)

8. 数据类型转换语句

1. 常见的转换语句:

说明语句(函数)
将x转换为一个整数int(x)
将x转换为一个浮点数float(x)
str(x)将对象x转换为字符串

2. 变量值进行类型转换:

float_str = str(11.22)
print(type(float_str), float_str)

3. 数据类型转换案例

# 将数字类型转换成字符串
num_str = str(11)
print(type(num_str), num_str)

float_str = str(11.22)
print(type(float_str), float_str)
# 将字符串转换成数字
num = str("11")
print(type(num), num)

num2 = float("11.22")
print(type(num2), num2)

9. 标识符

  1. 什么是标识符:用户编写代码时,对变量、类、方法等编写的名字,叫做标识符;

  2. 标识符的命名规则

    内容限定;(中文、英文、数字、下划线)

    大小写敏感;

    不可使用关键字做变量名;

  3. 变量的命名规范:见名知意、下划线命名法、英文字母大小写;

10. 算术运算符

图片来源:某站黑马视频内;

11. 赋值运算符 && 复合赋值运算符

12. 字符串

12.1 字符串的三种定义方式:
  1. 单引号定义法:name = '张三'
  2. 双引号定义法:name = "张三"
  3. 三引号定义法:name = """张三"""

三引号定义法,和多行注释的写法一样,同样支持换行操作;使用变量接收它,它就是字符串;不使用变量接收它,就可以作为多行注释使用;

12.2 字符串拼接

使用"+"号连接字符串变量或字符串字面量;

注意:无法和非字符串类型进行拼接;

12.3 字符串拼接格式化

字符串占位:

%s:%表示我要占位;s表示将变量变成字符串放入占位的地方;

name = "张三"
message = "学法律的 %s" % name
print(message)

数字类型占位:

age = 12
year = 100
message = "张三今年%s岁,还有%s年可以活" % (age, year)
print(message)

python中常用的数据类型占位:

格式符号转化
%s将内容转换成字符串,放入占位位置
%d将内容转换成整数,放入占位位置
%f将内容转换成浮点型,放入占位位置
12.4 字符串格式化精度的控制

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

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

示例:

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

    m.n的形式控制,如%5d、%5.2f、%.2f;

    m和.n均可省略;

  2. 如果m比数字本身宽度还小:m不生效;

  3. .n对小数部分做精度限制,同时会对小数部分做四舍五入;

num1 = 11
num2 = 11.345
print("数字11宽度限制5,%5d" % num1)
print("数字11宽度限制1,%1d" % num1)
print("数字11。345宽度限制7,小数精度2,结果是:%7.2f" % num2)
print("数字11。345宽度不限制,小数精度2,结果是:%.2f" % num2)

12.5 字符串格式化(使用{}引用变量)

通过语法:f"内容{变量}"的格式来快速格式化:

name = "某股"
set_up_year = 1998
stock_price = 19.99
print(f"我是{name},我成立于:{set_up_year},我今天的股票价格是:{stock_price}")

  1. 可以通过f" {变量} {变量} "的方式进行快速格式化;
  2. 这种方式不理会类型,不做精度控制;
  3. 适合对精度没有要求的适合快速使用;
12.6 字符串格式化-表达式格式化

想更加优雅些,少写点代码,直接对“表达式”进行格式化:

  • 表达式:一条具有明确执行结果的代码语句;

    1+1、5*2,就是表达式,因为有具体的结果,结果是一个数字又或者,常见的变量定义:name="张" age = 11+11;

    等号右侧的都是表达式,因为它们有具体的结果,结果赋值给了等号左侧的变量;

  • 对于字符串格式化:
print("1 * 1的结果是:%d" % (1 * 1))
print(f"1 * 1的结果是:{1 * 1}")
print("字符串在python中的类型是:%s" % type('字符串'))

13. 数据输入(input,获取键盘输入)

  • input()语句的功能:获取键盘输入;
  • 可以使用:input(提示信息),用以在使用中输入内容之前显示提示信息;
  • 注意点:无论键盘输入什么类型的数据,获取到的数据永远是字符串类型;

1. input,获取键盘输入

  • 数据输出:print
  • 数据输入:input

使用input()语句可以从键盘获取输入;

使用一个变量接收(存储)input语句获取的键盘输入数据即可;

print("你叫什么名字: ")
name = input()
print(f"我的名字是: {name}")

2. input语句(函数):省略写法

name = input("你叫什么名字: ")
print(f"我的名字是: {name}")

14. 布尔类型(bool)和比较运算符

        布尔(bool)表达现实生活中的逻辑,即真和假True表示真,False表示假,True本质上是一个数字记作1,False记作0;

我们处理直接赋值之外,还可以通过计算得到布尔类型的结果:

  1. ==判断是否相等,!=判断是否不相等;
  2. >判断是否大于,<判断是否小于;
  3. >=判断是否大于等于,<=判断是否小于等于;
print(bool(0))
print(bool(1))
print(bool(1 == 1))
print(bool(1 == 2))

16. if && else

if结尾需加冒号符号(:)

age = 6
if age > 5 :
    print("我今年6岁了.")
else:
    print("不,我今年才3岁!")

elif:

age = 6
if age > 10 :
    print("我今年10岁了.")
elif age == 6:
    print("我今年6岁了.")
else:
    print("不,我今年才3岁!")

17. random随机数

随机1~10之间的数:

import random

num = random.randint(1, 10)
print(num)

18. while循环语句

只要条件满足,while代码块中的代码会无限循环执行;

i = 0
while i < 5:
    print(i)
    i += 1

while嵌套循环:

i = 0
j = 0
while i < 5:
    print("i:" + str(i))
    while j < 5:
        print("j:" + str(j))
        j += 1
    i += 1

19. for循环

19.1 for循环使用

        for循环与while循环的区别:for循环是无法定义循环条件的,只能从被处理的数据集中,依次取出内容进行处理;

name = "yiyi"
for x in name:
    print(x)

19.2 range序列类型语句

语法一:range(5)

相当于[0, 5],会循环打印从0~5;

for x in range(5):
    print(x)

语法二:range(5, 10)

range(num1, num2),从num1开始到num2结束数字序列,不包含num2本身;

for x in range(5, 10):
    print(x)

语法三:range(5, 10 , 2)

range(num1, num2, step):获取一个从num1开始,到num2结束的数字序列,不包含num2本身,step获取数字之间的步长,step默认为1;

for x in range(5, 10, 2):
    print(x)

19.3 for循环嵌套
for x in range(1, 3):
    print(x)
    for y in range(10, 12):
        print(y)

20. continue && break

1. continue(跳出本次循环)

在本次循环中使用了continue,那么符合条件时在continue后面的语句都不会执行;

# 如果x大于2就跳出循环
for x in range(5):
    if x > 2:
        continue
    print(x)

2. break(结束整个循环)

在break语句执行之后,那么本次内层循环都不会执行了;

# 如果x等于1就结束循环
for x in range(5):
    if x == 1:
        break
    print(x)

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

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

相关文章

Polar Web【困难】上传

Polar Web【困难】上传 Contents Polar Web【困难】上传探索&思路&效果进入环境绕过过程Webshell连接 EXPPayload 总结 探索&思路&效果 本题的主题可见为文件上传&#xff0c;详情在破解的过程中逐步发掘&#xff1a; 进入环境&#xff0c;为一个文件上传功界面…

零基础入门篇①⑦ Python可变序列类型--集合

Python从入门到精通系列专栏面向零基础以及需要进阶的读者倾心打造,9.9元订阅即可享受付费专栏权益,一个专栏带你吃透Python,专栏分为零基础入门篇、模块篇、网络爬虫篇、Web开发篇、办公自动化篇、数据分析篇…学习不断,持续更新,火热订阅中🔥专栏限时一个月(5.8~6.8)重…

【UML用户指南】-12-对高级结构建模-接口、类型和角色

目录 1、名称 2、操作 3、关系 4、理解接口 5、常用建模技术 5.1、对系统中的接缝建模 5.2、对静态类型和动态类型建模 5.2.1、对静态类型建模 5.2.2、对动态类型建模 使接口易于理解和易于访问 接口在关于一个抽象做什么的描述与关于这个抽象如何做的实现之间定义了…

数仓建模中的一些问题

​​​在数仓建设的过程中&#xff0c;由于未能完全按照规范操作&#xff0c; 从而导致数据仓库建设比较混乱&#xff0c;常见有以下问题&#xff1a; 数仓常见问题 ● 数仓分层不清晰&#xff1a;数仓的分层没有明确的逻辑&#xff0c;难以管理和维护。 ● 数据域划分不明确…

ipynb转markdown的简单方法

在线转换 推荐在线转换&#xff0c;拖进去后下载就行&#xff0c;简单易操作。 Convert Jupyter notebook to GitHub-Flavored Markdown for free on AlldocsThe free text converter for all your documents.https://alldocs.app/convert-jupyter-notebook-to-markdown vsc…

RHEL8/Centos8 install for PXE

PXE介绍 PXE&#xff08;Preboot Execution Environment&#xff09;是预引导执行环境的缩写。它是由Intel设计的&#xff0c;允许客户端计算机通过网络从服务器上加载操作系统镜像。PXE通常用于大规模部署操作系统&#xff0c;例如在企业或学校环境中。 PXE工作流程如下&…

Windows安装运行elasticsearch服务

官方下载地址&#xff1a;Download Elasticsearch | Elastic 我在linux上执行的下载命令&#xff1a;wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-8.5.3-linux-x86_64.tar.gz Elasticsearch&#xff08;简称ES&#xff09;是一款基于Apache Lu…

Functional ALV系列 (10) - 将填充FieldCatalog封装成函数

在前面的博文中&#xff0c;已经讲了封装的思路和实现&#xff0c;主要是利用 cl_salv_data_descr>read_structdescr () 方法来实现。在这里&#xff0c;贴出代码方便大家参考。 编写获取内表组件的通用方法 form frm_get_fields using pt_data type any tablechanging…

OpenFeign远程接口调用使用公共模块出现的错误

今天在使用openfeign和sentinel实现fallback服务降级时遇到找不到类型的异常 检查代码发现没有错误&#xff0c;EnableFeignClients也在启动类上标注了 错误信息&#xff1a;A component required a bean of type com.zxc.cloud.apis.PayFeignSentinelApi that could not be f…

Effective Java 2 遇到多个构造器参数时要考虑使用构建器

第2个经验法则&#xff1a;用遇到多个构造器参数时要考虑使用构建器&#xff08;consider a builder when faced with many constructor parameters&#xff09; 上一条讨论了静态工厂相对于构造器来说有五大优势。但静态工厂和构造器有个共同的局限性:它 们都不能很好地扩展到…

SpringBoot——整合WebSocket长连接

目录 WebSocket 项目总结 新建一个SpringBoot项目 pom.xml WebSocketConfig配置类 TestWebSocketEndpoint服务端点类 socket.html客户端 IndexController控制器 SpringbootWebsocketApplication启动类 测试客户端和服务端如何使用WebSocket进行连接和通信 WebSocket S…

LayUI的暗淡:错误的押宝了前后端不分离

LayUI是一个不错的中后台UI框架&#xff0c;贝格前端工场用的CMS就是基于layUI的&#xff0c;可以说简单轻便。除此之外&#xff0c;贝格前端工场很少接到客户要求升级LayUI界面&#xff0c;或者采用LayUI框架的。 一、LayUI官网的谢幕&#xff0c;吹起了前后端不分离模式没落…

Java Set系列集合的使用规则和场景(HashSet,LinkedHashSet,TreeSet)

Set集合 package SetDemo;import java.util.HashSet; import java.util.Iterator; import java.util.Set;public class SetDemo {public static void main(String[] args) {/*Set集合的特点&#xff1a;1.Set系列集合的特点&#xff1a;Set集合是一个存储元素不能重复的集合方…

【数据结构(邓俊辉)学习笔记】图03——拓扑排序

文章目录 0. 概述1. 零入度算法1. 1 拓扑排序1. 2 算法 2. 零出度算法2.1 算法2.2 实现2.3. 复杂度 0. 概述 学习下拓扑排序 1. 零入度算法 1. 1 拓扑排序 首先理解下拓扑排序 其实老师经常干这事&#xff0c;如编讲义&#xff0c;将已经知道的知识点串起来变成讲课序列。那…

AIGC作答《2024年高考作文|新课标I卷》能拿多少分?

AIGC作答《2024年高考作文&#xff5c;新课标I卷》能拿多少分&#xff1f; 一、前言二、题目三、作答 一、前言 如火如荼的2024年高考圆满落幕&#xff0c;在如此Happy的时刻&#xff0c;AIGC技术正以其前所未有的热度席卷全球。它不仅改变了我们获取信息的方式&#xff0c;也…

RJ45 PCB布线

RJ45底盘接地和数字地通过一个1M欧姆的电阻和一个0.1uF的去耦电容隔离。其底盘接地和数字地的间距&#xff0c;必须比60mil宽。如图11及图12所示。 图11 典型变压器集成单RJ45的机箱/数字地平面 图12 典型RJ45和变压器分开的机箱/数字地平面https://www.bilibili.com/read/…

Java学习-JDBC(二)

核心API 注册驱动 Class.forName(“com.mysql.cj.jdbc.Driver”);在Java中&#xff0c;当使用JDBC连接数据库时&#xff0c;需要加载数据库特定的驱动程序&#xff0c;以便与数据库进行通信&#xff0c;加载驱动程序的目的是为了注册驱动程序&#xff0c;使得JDBC API能够识别…

Element-UI入门

目录 1.什么是Element-UI 2.作用 3.版本历史 4.优缺点 4.1.优点 4.2.缺点 5.应用场景 6.代码示例 7.未来展望 8.总结 1.什么是Element-UI Element-UI 是由饿了么前端团队开发的一套基于 Vue.js 的桌面端组件库。提供了一整套 UI 组件&#xff0c;使开发者能够快速构…

统信UOS1070上配置文件管理器默认属性01

原文链接&#xff1a;统信UOS 1070上配置文件管理器默认属性01 Hello&#xff0c;大家好啊&#xff01;今天给大家带来一篇关于在统信UOS 1070上配置文件管理器默认属性的文章。文件管理器是我们日常操作系统使用中非常重要的工具&#xff0c;了解如何配置其默认属性可以极大地…

使用贝塞尔曲线实现一个iOS时间轴

UI效果 实现的思路 就是通过贝塞尔曲线画出时间轴的圆环的路径&#xff0c;然后 使用CAShaper来渲染UI&#xff0c;再通过 animation.beginTime [cilrclLayer convertTime:CACurrentMediaTime() fromLayer:nil] circleTimeOffset 来设置每个圆环的动画开始时间&#xff0c; …