【Python学习篇】Python基础入门学习——Python基础语法(二)

本文介绍了Python中的数据类型,包括string,int,float,以及如何使用type()函数检查数据类型。讲解了字符串的不同定义方式、类型转换方法、字符串拼接和格式化,以及如何获取键盘输入并处理数据类型。
摘要由CSDN通过智能技术生成

四、数据类型:

4.1 数据类型

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

目前在入门阶段,我们主要接触如下三类数据类型:

989b38649f2b4e86a094e8461457c9f0.png

string、****int、float这三个英文单词,就是类型的标准名称。

4.2 **type()**语句

那么,问题来了,如何验证数据的类型呢?

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

语法:

type(被查看类型的数据)

4.3 **type()**语句的使用方式

  1. 在print语句中,直接输出类型信息:

b75ba0acd2b24153968405315c3956d2.png

98eaf1a2209b4fbeaf64db46123282dd.png

  1. 用变量存储type()的结果(返回值):

d75e1880470744fa9420cb47e3e36db0.png

20230724024159.png?origin_url=data%3Aimage%2Fgif%3Bbase64%2CR0lGODlhDgAOAIAAAAAAAP%2F%2F%2FyH5BAAAAAAALAAAAAAOAA4AAAIMhI%2Bpy%2B0Po5y02qsKADs%3D&pos_id=9FS7uKT5

4.4 **type()**语句的使用方式

查看的都是<字面量>的类型,能查看变量中存储的数据类型吗?

那当然:可以

f5e93c9d10d345f09b4491084c2ee68a.png

938c0d92e3c74dd88cd60e8733cbee5c.png

变量有类型吗?

我们通过type(变量)可以输出类型,这是查看变量的类型还是数据的类型?

查看的是:变量存储的数据的类型。因为,变量无类型,但是它存储的数据有。

bd3539ef42c84666bae03edc4fc1851f.png

#方式1:   使用print直接输出类型信息
print(type("妄北y"))
print(type(666))
print(type(11.345))

#方式2:   使用变量存储type()语句的结果
string_type = type("妄北y")
int_type = type(666)
float_type = type(11.345)
print(string_type)
print(int_type)
print(float_type)

#方式3:   使用type()语句,查看变量中存储的数据类型信息
name = "妄北y"
name_type = type(name)
print(name_type)

d3e0be4f188a4f1bbb27042328a087cf.png

4.5 字符串类型的不同定义方式

字符串有3种不同的定义方式:91a30bde877044098651c74f974fa068.png

五、数据类型转换:

5.1 为什么要转换类型

数据类型之间,在特定的场景下,是可以相互转换的,如字符串转数字、数字转字符串等

那么,我们为什么要转换它们呢?

数据类型转换,将会是我们以后经常使用的功能。

如:

•从文件中读取的数字,默认是字符串,我们需要转换成数字类型

•后续学习的input()语句,默认结果是字符串,若需要数字也需要转换

•将数字转换成字符串用以写出到外部系统

•等等

用途很多,那么让我们来学习一下如何转换吧。

5.2 常见的转换语句

6a7b3e2060234926878c4db2625dd4f8.png

**同前面学习的****type()**语句一样,这三个语句,都是带有结果的(返回值)

我们可以用print直接输出

或用变量存储结果值

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

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

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

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

# 整数转浮点数
float_num = float(11)
print(type(float_num),float_num)

# 浮点数转整数
int_num= int(11.345)
print(type(int_num),int_num)

5,3 类型转换注意事项

类型转换不是万能的,毕竟强扭的瓜不会甜,我们需要注意:

  1. 任何类型,都可以通过str(),转换成字符串

  2. 字符串内必须真的是数字,才可以将字符串转换为数字

023245075fe64d2099fc40678a2b2cb2.png

六、标识符:

6.1 什么是标识符

在Python程序中,我们可以给很多东西起名字,比如:

变量的名字

方法的名字

类的名字,等等

这些名字,我们把它统一的称之为标识符,用来做内容的标识。

所以,标识符:

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

6.2 标识符命名规则

Python中,标识符命名的规则主要有3类:


内容限定


大小写敏感


不可使用关键字

(1)  标识符命名规则 - 内容限定

标识符命名中,只允许出现:

•英文

•中文

•数字

•下划线(_)

这四类元素。

其余任何内容都不被允许。

7ab871d0b22f4f7a915e3dc6bd5406de.png

(2)  标识符命名规则 - 大小写敏感

以定义变量为例:

Andy = “安迪1”

andy = “安迪2”

字母a的大写和小写,是完全能够区分的。

46da8abd3a81493fab509f69cb2f0cdb.png

(3) 标识符命名规则 - 不可使用关键字

436f2cee80d04e85830a1b9e58481648.png

6.3 变量命名规范

学完了标识符(变量、类、方法)的命名规则后,我们在来学习标识符的命名规范

•变量名

•类名

•方法名

不同的标识符,有不同的规范。

我们目前只接触到了:变量。所以,目前学习:变量的命名规范。

•见名知意

•下划线命名法

英文字母全小写

(1) 变量命名规范 - 见名知意

变量的命名要做到:

•明了:尽量做到,看到名字,就知道是什么意思

0ed0d45033024446b042917fcacadc97.png

•简洁:尽量在确保“明了”的前提下,减少名字的长度

c7a41ed1d74d407baee65e25ddb80a52.png

(2) 变量命名规范 - 下划线命名法

多个单词组合变量名,要使用下划线做分隔。

da0b90a4f83e40dd93db1b713685255e.png

(3) 变量命名规范 - 英文字母全小写

dfc62fa6674b46e4ba37a12aa13f0f9b.png

七、运算符:

7.1 算术(数学)运算符

ec18637ebf0543b2aab49c404597004d.png

7.2  算术运算符的演示

加减乘除和求平方,我们在前面已经使用过啦。

现在在带上:整除以及求余数,一起试一试吧。

print("1 + 1结果是:%d"%(1 + 1))
print("2 - 1结果是:%d"% (2 - 1))
print("1 * 3结果是:%d" % (1 * 3))
print("9 / 3结果是:%d" % (9/ 3))
print("9 // 2(9整除2)结果是:%d"% (9 // 2))
print("9 %% 2(9余2的结果是)结果是:%d" % (9 % 2))
print("2 的 6 次方是:结果是:%d" % (2 ** 6))

805e79184d1248f4876537fa90f424be.png

7.3 赋值运算符

02b1d6e6c1624ba3bef9e8c2920533d1.png

八、字符串扩展:

8.1 字符串的三种定义方式

字符串在Python中有多种定义形式:

单引号定义法:name = ‘妄北y’

双引号定义法:name = ”妄北y“

三引号定义法:name = ”“”妄北y““”

三引号定义法,和多行注释的写法一样,同样支持换行操作。

使用变量接收它,它就是字符串

不使用变量接收它,就可以作为多行注释使用。

8.2 字符串的引号嵌套

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

单引号定义法,可以内含双引号

双引号定义法,可以内含单引号

可以使用转移字符(\)来将引号解除效用,变成普通字符串

8.3 字符串拼接

如果我们有两个字符串(文本)字面量,可以将其拼接成一个字符串,通过+号即可完成,如:

print("Hello " + "Linux")

输出:

cb41a671e4be4b36802f26c1429f257e.png 不过一般,单纯的2个字符串字面量进行拼接显得很呆,一般,字面量和变量或变量和变量之间会使用拼接,如:

name = "妄北" 
print("大家好呀,我的名字叫" + name + "很高兴认识大家")

0c6102f6804e4b14bad5119874a03131.png

既然,字符串和变量进行拼接,我们来完成一个小需求:

定义2个变量:

•name,内容是“妄北”

•address,内容是“建材城东路9号”

要求写程序通过print语句以及字符串拼接的方式输出:

name = "妄北"
address = "建材城东路9号"
print("大家好呀,我的名字叫" + name + "很高兴认识大家。我家的地址是:" + address + ",欢迎来我家做客")

d131eb4411b64a63ae23139790e1785d.png

既然可以和字符串变量完成拼接,那么,是否可以和其它变量类型如数字类型完成拼接呢?

name = "妄北"
year = 11
print("大家好呀,我的名字叫" + name + "很高兴认识大家。我的年龄为" + year)

9f70391746424619bf88778242bdc266.png 8.4 字符串格式化

我们会发现,这个拼接字符串也不好用啊

1. 变量过多,拼接起来实在是太麻烦了78da55257796464e8e35c273e1d147f7.png

2. 字符串无法和数字或其它类型完成拼接。

所以,有没有其它方式,即方便又支持拼接其它类型呢?

这个方式,就是字符串的格式化

我们可以通过如下语法,完成字符串和变量的快速拼接。

6c9e45137030445d8ae6d0cdb0b0bdf3.png

9c9661f0d81a42f2b9ff1f5241ed807e.png

其中的,%s

•%  表示:我要占位

•s   表示:将变量变成字符串放入占位的地方

所以,综合起来的意思就是:我先占个位置,等一会有个变量过来,我把它变成字符串放到占位的位置。

那,数字类型呢?可以不可以占位?

那必须可以,我们来尝试如下代码:

cd5dccfb144f4aa69b8dacde35d6469d.png

aced8275cabe40ea90981c87fb33a353.png

数字也能用%s占位吗?

可以的哦,这里是将数字 转换成了 字符串哦

也就是数字57,变成了字符串"57"被放入占位的地方

数字类型,也太没有地位了吧,竟然要被转成字符串拼接。

有没有体面一点的方式,让数字以其原本的面貌拼接进去呢?

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

安排。

Python中,其实支持非常多的数据类型占位

最常用的是如下三类

如下代码,完成字符串、整数、浮点数,三种不同类型变量的占位

name = "妄北"
set_up_year = 2002
stock_price = 19.99
message ="我是::%s,我出生于:%d,我的CSDN余额为 %f "% (name,set_up_year,stock_price)
print(message)

9a9bbc41c5d14b4d85ff51aa8fedce51.png

8.5 格式化的精度控制

如下代码,完成字符串、整数、浮点数,三种不同类型变量的占位后运行结果

9a9bbc41c5d14b4d85ff51aa8fedce51.png

浮点数19.99,变成了19.990000输出

这里我们就要讲解一下,字符串格式化之“数字精度控制”

我们可以使用辅助符号"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

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)

cbbcc23457974ae29dbf79a5edbd749f.png

8.6 字符串格式化方式2

字符串格式化 - 快速写法

目前通过%符号占位已经很方便了,还能进行精度控制。

可是追求效率和优雅的Python,是否有更加优雅的方式解决问题呢?

e8ee9b4a683c4df18ce26ec60852969c.png

name = "妄北"
set_up_year = 2002
stock_price = 19.99
print(f"我是::{name},我出生于:{set_up_year},我的CSDN余额为 {stock_price} ")

ad3e2fc439d4427086f1577e29738c15.png

8.7****对表达式进行格式化

刚刚的演示,都是基于变量的。

可是,我想更加优雅些,少写点代码,直接对“表达式”进行格式化是否可行呢?

那么,我们先了解一下什么是表达式。

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

如:

1 + 1、5 * 2,就是表达式,因为有具体的结果,结果是一个数字

又或者,常见的变量定义:

name = “张三”     age = 11 + 11

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

那么,对于字符串格式化,能否直接格式化一个表达式呢?

可以,上代码:

print( "1 * 1的结果是: %d" %(1 * 1))
print(f"1 * 1的结果是:{1 * 1}")
print("字符串在Python中的类型是:%s" % type('字符串'))

91b4bd03448d42568c8f28f90e0b3b9f.png在无需使用变量进行数据存储的时候,可以直接格式化表达式,简化代码哦

九、数据输入:

9.1 获取键盘输入

试想一下,我们经常遇到过程序需要我们输入信息的场景。

比如:银行取钱

817c357a0545418fbeac8ac5ed3604f3.png

9.2 input****语句(函数)

我们前面学习过print语句(函数),可以完成将内容(字面量、变量等)输出到屏幕上。

在Python中,与之对应的还有一个input语句,用来获取键盘输入。

•数据输出:print

•数据输入:input

使用上也非常简单:

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

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

print("请告诉我你是谁")
name = input()
print("Get!!!你是:%s" % name)

b9721b34c8aa41b6bb8b11fedcc1be91.png

在前面的代码中,输出”请告诉我你是谁?“的print语句其实是多余的ab2b70591fda47ac8fb68c89e80c665a.png

input()语句其实是可以在要求使用者输入内容前,输出提示内容的哦,方式如下:

3edd72552ea74e17a09c486a932e3361.png

如图,在input的括号内直接填入提示内容即可。

9.3 input****语句获取的数据类型

我们刚刚试验的都是输入了字符串类型的数据。

那么如果我们输入数字类型或其它类型,结果会如何?

那么,让我们通过前面学习过的???

**type()**语句

来验证一下输入内容的数据类型吧。

522bc8b3af5c454e9242a231d02c45e4.png

可以看到,无论键盘输入何种类型的数据

最终的结果都是:字符串类型的数据

大佬觉得有用的话点个赞 👍🏻 呗。
❤️❤️❤️本人水平有限,如有纰漏,欢迎各位大佬评论批评指正!😄😄😄

💘💘💘如果觉得这篇文对你有帮助的话,也请给个点赞、收藏下吧,非常感谢!👍 👍 👍

🔥🔥🔥任务在无形中完成,价值在无形中升华,让我们一起加油吧!🌙🌙🌙

bd49d2720fc64b8a856371a5df557363.gif

135b53b5f5c443c28858992462ee4c98.gif

自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。

深知大多数Python工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

因此收集整理了一份《2024年Python开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。

img

img

img

img

img

img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上前端开发知识点,真正体系化!

由于文件比较大,这里只是将部分目录大纲截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且后续会持续更新

如果你觉得这些内容对你有帮助,可以扫码获取!!!(备注:Python)

.gif)

135b53b5f5c443c28858992462ee4c98.gif

自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。

深知大多数Python工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

因此收集整理了一份《2024年Python开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。

[外链图片转存中…(img-b3A6Jfi6-1713720578333)]

[外链图片转存中…(img-z6odTow1-1713720578334)]

[外链图片转存中…(img-4W64p765-1713720578334)]

[外链图片转存中…(img-K68uy8gC-1713720578335)]

img

img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上前端开发知识点,真正体系化!

由于文件比较大,这里只是将部分目录大纲截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且后续会持续更新

如果你觉得这些内容对你有帮助,可以扫码获取!!!(备注:Python)

  • 13
    点赞
  • 27
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值