Python入门基础之变量及字符串
作者:薛定谔的猫ovo 发布时间:2023-08-08 06:10:11
变量
当把一个值赋给一个名字时,它就会存储在内存中,我们把这块内存称为变量(variable)。
在大多数语言中,都把这种行为称为"给变量赋值"或"把值存储在变量中"。不过,Python与大多数其他语言不同,它并不是把值存储在变量中,而更像把名字贴在值上面。所以,有些人会说Python没有变量,只有名字。变量就是一个名字,通过这个名字,我们可以找到想要的东西。
例如:
变量之所以称之为变量,正是因为它是可变的。
在上面的例子中,先创建了一个变量名叫x,给它初始化赋值为3,然后又给它赋值为5(此时3就被5替换);再创建另一个变量y,并初始化赋值为8;最后创建变量z,其值是变量x和y的和。
同样,这样的加法也可以运用到字符串中:
这种字符串加字符串的语法,在Pythonn里称为字符串的拼接。
关于变量
在使用变量之前,需要对其先赋值
变量名可以包括字母、数字、下划线,但是变量名不能以数字开头
字母可以是大写或小写,但大小写是不同的,也就是说A和a对Python来说是完全不同的两个名字
等号(=)是赋值的意思,左边是名字,右边是值,不能颠倒
变量名命名规则
- 变量名由数字、字母、下划线组成。**但不能以数字开头**
- 命名时应当避开关键字。
```python
#查看python关键字
import keyword
kw = keyword.kwlist
print(kw)
```
```python
#运行结果
['False', 'None', 'True', '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']
```
字符串
我们所认知的字符串就是引号内的一切东西,我们也把字符串叫作文本,文本和数字是不一样的。
如果直接让两个数字相加,那么得到的会是数字相加后的结果;但如果在数字两边加上了引号,那就变成了字符串的拼接,这正是引号带来的差别:
在Python中创建一个字符串,要在字符串两边加上引号,可以是单引号或者双引号,但是必须成对,不能一边用单引号,一边用双引号。
那么如果字符串内容中本身就有单引号或双引号怎么办?
一般有两种解决方法:
<1> 使用转义符号( \ )对字符串中的引号进行转义:
<2> 利用Python既可以用单引号也可以用双引号表示字符串的特点,用不同的引号表示字符串,就不会产生歧义了:
原始字符串
对于字符串中带有 \ 的情况:例如打印C:\now
可以看到,打印结果并不是我们所预期的,这是由于反斜杠(\)和后边的字符(n)恰好转义之后构成了换行符(\n)。
这时,可能有的人会想到用反斜杠来转义反斜杠不就可以了吗?确实是这样的,我们可以用反斜杠对自身进行转义:
这样确实是可行的,但是,如果一个字符串中有多个反斜杠,那么这样做不仅很麻烦,而且可能会使代码变得混乱。
对于这个问题,在Python中有一个快捷的方法,就是使用原始字符串,原始字符串的使用非常简单,只需要在字符串前面加一个英文字母r即可:
需要注意的是,无论是否是原始字符串,都不能以反斜杠作为结尾!
这是因为反斜杠放在字符串末尾表示该字符串还没有结束,换行继续的意思。
如果非要在字符串的结尾加个反斜杠,则可以利用反斜杠转义:
长字符串
如果希望得到一个跨越多行的字符串,如:
从明天起,做一个幸福的人
喂马,劈柴,周游世界
从明天起,关心粮食和蔬菜
我有一所房子,面朝大海,春暖花开
如果要把这段话打出来,利用学过的知识,可以使用多个换行符(\n):
如果行数非常多的话,那么用换行符就太麻烦了,好在Python中提供了解决问题的办法——只需要使用三重引号字符串(" " " 内容 " " ")就可以了。
最后,要注意的是,在编程过程中要用英文的标点符号,初学者最容易犯的错误就是误用了中文的标点符号,导致了语法错误。
来源:https://blog.csdn.net/weixin_44162361/article/details/122242256
猜你喜欢
- 做运维的朋友应该知道,公司IDC机房经常有上架、下架、报修和报废的服务器。如果服务器数量很多的时候很容易造成监控遗漏。  
- 在任何有监督机器学习项目的模型构建阶段,我们训练模型的目的是从标记的示例中学习所有权重和偏差的最佳值。如果我们使用相同的标记示例来测试我们的
- 什么是Css Hack?由于不同的浏览器,比如Internet Explorer 6,Internet Explorer 7,Mozilla
- 最近开始学习Python开发,“工欲善其事必先利其器”,Python程序都是用什么工具开发出来的呢。
- scikit-learn库scikit-learn已经封装好很多数据挖掘的算法现介绍数据挖掘框架的搭建方法1.转换器(Transformer
- flask中的sqlalchemy 相比于sqlalchemy封装的更加彻底一些 , 在一些方法上更简单首先import类库:在CODE上查
- 我们在建立一个大型网站的时候,往往会包括很多相同的页面框架模式,甚至一些细节元素都是相同的。但令人困扰
- skimage包的exposure模块图像亮度与对比度的调整,是放在skimage包的exposure模块里面1、gamma调整对原图像的像
- 一、Python urllib 模块是什么urllib 模块是 Python 标准库,其价值在于抓取网络上的 URL 资源,入门爬
- 网上async with和async for的中文资料比较少,我把PEP 492中的官方陈述翻译一下。异步上下文管理器”async with
- 为什么要使用滤波消除图像中的噪声成分叫作图像的平滑化或滤波操作。信号或图像的能量大部分集中在幅度谱的低频和中频段是很常见的,而在较高频段,感
- 1. pyecharts 模块介绍Echarts 是一个由百度开源的数据可视化,凭借着良好的交互性,精巧的图表设计,得到了众多开发者的认可。
- Crawler全名是DomCrawler,是Symfony框架的组件。令人发指的是DomCrawler的没有中文文档,Symfony也没有翻
- 如下所示:def str_to_hex(s): s = s.split(' ')&nbs
- Python 中提供了对时间日期的多种多样的处理方式,主要是在 time 和 datetime 这两个模块里。一、time 模块time 模
- 有如下 Pandas DataFrame:import pandas as pdinp = [{'c1':10, '
- <!--#include file="admin_Checkuser.asp"--> <%
- 在这篇文章中,我们将分析一个网络爬虫。网络爬虫是一个扫描网络内容并记录其有用信息的工具。它能打开一大堆网页,分析每个页面的内容以便寻找所有感
- 介绍Silk是Django框架的实时分析和检查工具。源代码名称:django-silk源代码网址: http://www.git
- 对于一个给定的字符串,逆序输出,这个任务对于python来说是一种很简单的操作,毕竟强大的列表和字符串处理的一些列函数足以应付这些问题 了,