1200字范文,内容丰富有趣,写作的好帮手!
1200字范文 > python变量隔一个数取出来_Python(二):变量 常量 字符串操作

python变量隔一个数取出来_Python(二):变量 常量 字符串操作

时间:2018-08-25 21:27:02

相关推荐

python变量隔一个数取出来_Python(二):变量 常量 字符串操作

变量&常量

变量和常量都是存储值的内存区域,“变量”就是说值可以改变,“常量”就是说这个值不能改,是只读的,关于常量不详细介绍了

命名

上一次说过命名规则,数字、字母和下划线组成,不能数字开头,不能使用关键字

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关键字可以用下面的方法:

importkeyword

#下面打印关键字列表

print(keyword.kwlist)

#下面是判断一个词是不是Python的关键字

print(keyword.iskeyword('pass'))

那能怎么命名变量呢

#下面这些明明方式都是可以的,但是为了看着方便,不建议写成这样毫无意义的名字

a=1

_a=2

_1=3

_1a=4

#下面这些就是错误的,会报错

pass=1

$adb=1

1ab=1

赋值

a=1

这就完成了一个变量的赋值,在python中,每一次赋值操作会创建一个新的变量

比如:

a=1

a=2

是两个不一样的变量,我们可以通过查看他们的id(也就是他们的标识),方便的理解

a=1

print(id(a))

a=2

print(id(a))

运行结果:

4456127488

4456127520

嗯...这里是说变量a两次的id是不一样的,因为重新赋值后变成了一个新的变量

局部变量

在函数或者代码段内的变量

deffun():

name="xiaoming"

print(name)

fun()

print(name)

输出结果会报错,提示NameError: name 'name' is not defined并指向第六行,说明name在fun()外已经不能生效了

全局变量

#定义一个全局变量

_num1=15

_num2=20

importdemo1

defadd():

return(demo1._num1+demo1._num2)

print(add())

上面那一部分是在一个文件中被赋值的变量,另外新建一个文件,import这个保存全局变量的文件,然后使用变量就可以了

数据类型

每种语言都有说的东西,这是构成编程语言的基础。Python的数据类型有数字、字符串、元组、列表和字典。

数字、字符串、元组,是不可变数据类型,列表和字典是可变数据类型

还能按有序无序划分,字符串、元组、列表都是有序的

数字

数字有整形、浮点型、布尔型、复数

比较好的一点是,给变量赋值数字时,不需要关心数据类型,直接赋值后,Python会自动判断变量类型,创建对象

当然,如果需要查看数据类型,可以使用type类来查看,老规矩,贴一段~

a=1

b=1.1

c=True

d=1+2j

print(type(a))

print(type(b))

print(type(c))

print(type(d))

运行结果:

这些不陌生,都是以前见过的东西

字符串(划重点)

字符串的表示方法,上次已经讲明了,单引号、双引号、三引号来表示,这次看下相关操作和注意事项吧

转义 ---- 如果恰好需要输入特殊字符,可以用反斜杠\进行转义

path='C:\\windows\\users\\xxx'

print(path)

path2=r'C:\windows\users\xxx'

print(path2)

运行结果:

C:\windows\users\xxx

C:\windows\users\xxx

两种方式输出是一样的,第一种字符串中原有的\被转义,第二种因为字符串前有r,会保留原有格式输出

关于\转义的内容可以再百度一下,有些转义需要认识

截取

上边说过,字符串是有序的,既然有序,就能按序号截取字符串的内容,访问其中一部分的值

栗子:

str1="python"

print(len(str1))#看看字符串str1有多长

print(str1[1])#看看字符串str1第一个字符是啥

#取最后一个字符

print(str1[len(str1)-1])

print(str1[-1])

OK,现在取了字符串str1中的第一个和最后一个字符进行打印,运行结果是

6

y

n

n

len(str1)打印出了字符串的长度,而字符串的下标是从0开始的

所以取第一个字符(str[1])时,其实取的是我们看到的第二个字符y,这是正确的

两种取最后一个字符的方式都需要了解,并且个人认为-1这种下标简直太方便了

能不能取多个字符呢?

当然是可以的,依然可以用切片的方式,取出字符串中的部分内容

str1="python"

print(len(str1))#看看字符串str1有多长

print(str1[1])#看看字符串str1第一个字符是啥

#下面添加了三个参数,分别对应[start:end:step]中的开始位置、结束位置、步长

#也就是说,从第0个开始到第4个结束,每隔一个字符,取一个值

print(str1[0:4:2])

#来看下倒序取值,从-1开始,到-5,将每个值取出来,从第-1个到第-5个依次输出,当然,依然不包括最后一个

print(str1[-1:-5:-1])

输出

#字符串拼接

print("wang"+"er"+"xiao")

#字符串翻倍

print("pig"*4)

#格式化输出字符串

# %s 字符串

# %c 单个字符

# %b 二进制整数

# %d 十进制整数

# %i 十进制整数

# %f 浮点数

# %F 浮点数

# %.2f 保留两位小数的浮点数

print("今天是星期%s,这是第%d篇文章"%("二",2))

#还可以这么写

day="二"

num=2

str2="今天是星期{day},这是第{num}篇文章"

print(str2.format(day=day,num=num))

str1="python"

print("-".join(str1))#用“-”连接str中的所有字符

print(str4.replace("th","TH",1))#将字符串中的对应位置字符替换为新的字符,最多替换1次

查找

#查询字符(串)是否在字符串中

str1="python"

print("t"instr1)

print("h"instr1)

print("h"notinstr1)

print('t'notinstr1)

print("py"notinstr1)

#find 查找字符(串)是否在字符串中,如果在,返回第一次出现的位置,如果不在,返回-1

print(str1.find("p"))

print(str1.find("x"))

#index 如果在,返回第一次出现的位置,如果不在,抛出异常

print(str1.index("t"))

print(str1.index("x"))

判断

str3="Python3哈哈"

#对字符串进行判断,共11个,分别是

print(str3.isalpha())#是不是全字符

print(str3.isalnum())#是不是全是字符数字

print(str3.isdigit())#是不是全是数字

print(str3.isdecimal())#是否只包含十进制字符

print(str3.isidentifier())#是否以字母开头

print(str3.islower())#字母是否全小写

print(str3.isnumeric())#是否只有数字

print(str3.isprintable())#是否都是可见字符

print(str3.isspace())#是否是空格

print(str3.istitle())#是否所有单词首字母大写

print(str3.isupper())#字母是否都是大写

print(str3.startswith("p"))#是否以某字符开头

print(str3.endswith("哈"))#是否以某一字符结尾

print(str3.__contains__("thon"))#字符串是否在字符串中

#以下内容返回的是次数

print(str3.count("33",5,9))#判断字符(串)在字符串指定范围中出现的次数

print(str3.count("O"))#大写的O没有出现过

print(str3.count("o"))#小写的o出现过一次

操作

str4="python3"

str5="PythOn3"

str6=" this is python3 "

print(str4.capitalize())#首字母大写

print(str5.casefold())#字母小写

print(str4.center(45,"-"))#以某个字符填充字符串到指定长度

print(str4.replace("th","TH",1))#将字符串中的对应位置字符替换为新的字符,最多替换1次

print(str6.split("t"))#将字符串以指定字符切割,存入一个列表

print(str6.partition("x"))#包含分隔符,分隔符的前一部分、分隔符、分隔符后一部分组成三元元组;如果不包含分隔符,转换为源字符串、空、空的三元元组

print(str6.strip())#去除两边空格

print(str6.lstrip())#去除左边空格

print(str6.rstrip())#去除右边空格

print(str5.lower())#所有字母转小写

print(str5.upper())#所有字母转大写

lower和casefold,都是字母转换为小写,但casefold转换范围更大,不限于A-Z

好了,字符串操作到此结束,由于犯懒,只贴代码,环境好的直接运行就能明白啦~

宝爷镇楼~回家撸猫

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。