python字符串

字符串的意思就是“一串字符”,比如“Hello,Charlie”是一个字符串,“How are you?”也是一个字符串。

Python 要求字符串必须使用引号括起来,使用单引号也行,使用双引号也行,只要两边的引号能配对即可。

Python字符串和转义字符

字符串的内容几乎可以包含任何字符,英文字符也行,中文字符也行。

字符串既可用单引号括起来,也可用双引号括起来,它们没有任何区别。例如如下程序:

str1 = 'Charlie'
str2 = "C语言中文网"
print(str1)
print(str2)

如果字符串内容本身包含了单引号或双引号,此时就需要进行特殊处理:

  1. 使用不同的引号将字符串括起来。
  2. 对引号进行转义。

先看第一种处理方式。假如字符串内容中包含了单引号,则可以使用双引号将字符串括起来。例如:

str3 = 'I'm a coder'

第二种处理方式:使用转义字符。Python 允许使用反斜线(\)将字符串中的特殊字符进行转义。假如字符串既包含单引号,又包含双引号,此时必须使用转义字符,例如如下代码:

str5 = '"we are scared,Let\'s hide in the shade",says the bird'

拼接字符串

如果直接将两个字符串紧挨着写在一起,Python 就会自动拼接它们,例如如下代码:

s1 = "Hello,"'Charlie'
print(s1)

上面代码将会输出:

Hello,Charlie

repr 和字符串

有时候,我们需要将字符串与数值进行拼接,而 Python 不允许直接拼接数值和字符串,程序必须先将数值转换成字符串。

为了将数值转换成字符串,可以使用 str() 或 repr() 函数,例如如下代码:

s1 = "这是数字: "
p = 99.8
#字符串直接拼接数值,程序报错
print(s1 + p)
#使用str()将数值转换成字符串
print(s1 + str(p))
#使用repr()将数值转换成字符串
print(s1 + repr(p))

使用 input 和 raw_input 获取用户输入

input() 函数用于向用户生成一条提示,然后获取用户输入的内容。由于 input() 函数总会将用户输入的内容放入字符串中,因此用户可以输入任何内容,input() 函数总是返回一个字符串。

例如如下程序:

msg = input("请输入你的值:")
print (type(msg))
print(msg)

第一次运行该程序,我们输入一个整数,运行过程如下:

请输入你的值:2
<class 'str'>
2

第二次运行该程序,我们输入一个浮点数,运行过程如下:

请输入你的值: 1.2
<class 'str'>
1.2

第三次运行该程序,我们输入一个字符串,运行过程如下:

请输入你的值:Hello
<class 'str'>
Hello

Python长字符串

前面介绍 Python 多行注释时提到使用三个引号(单引号、双引号都行)来包含多行注释内容,其实这是长字符串写法,只是由于在长字符串中可以放置任何内容,包括放置单引号、双引号都可以,如果所定义的长字符串没有赋值给任何变量,那么这个字符串就相当于被解释器忽略了,也就相当于注释掉了。

实际上,使用三个引号括起来的长字符串完全可以赋值给变量,例如如下程序:

s = '''"Let's go fishing", said Mary.
"OK, Let's go", said her brother.
they walked to a lake'''
print(s)

上面程序使用三个引号定义了长字符串,该长字符串中既可包含单引号,也可包含双引号。

Python原始字符串

由于字符串中的反斜线都有特殊的作用,因此当字符串中包含反斜线时,就需要对其进行转义。

比如写一条 Windows 的路径 G:\publish\codes\02\2.4,如果在 Python 程序中直接这样写肯定是不行的,需要写成 G:\\publish\\codes\\02\\2.4,这很烦人,此时可借助于原始字符串来解决这个问题。

原始字符串以“r”开头,原始字符串不会把反斜线当成特殊字符。因此,上面的 Windows 路径可直接写成 r'G:\publish\codes\02\2.4'。

关于原始字符串的用法看如下程序:

s1 = r'G:\publish\codes\02\2.4'
print(s1)


列表


一、列表的几种用法。

(1)、列表能取索引,按索引取元素,

(2)、列表能切片,取出子列表。列表的几种用法。


二、列表 apped 和pop的用法

l = [1,2,3,4,5,6]
l.append(2) 
print(l)
s = l.pop()
print(s)


三、列表index的用法

l = [1,2,3,4,5,6] 
s = l.index(3)
print(s)


四、列表sort 和 reverse 和 sorted

d = [3,2,5,6,8,1] 
l = sorted(d)
print(l) 
d.reverse()  
d.sort()


五、列表 extend的用法

d = [3,2,5,6,8,1]
l = [1,2,9,4] 
d.extend(l)
print(d)


元祖


 Python的元组和列表类似,不同之处在于元组中的元素不能修改(因此元组又称为只读列表),且元组使用小括号而列表使用中括号

一、元组中只包含一个元素时,需要在元素后面添加逗号来消除歧义

tup1=(10,)


二、元组中的元素值使不允许修改的,但可以对元组进行连接组合

tup1=(12,34.56)
tup2=('abc','xyz')
 
tup1[0]=100 
tup3=tup1+tup2 
print(tup3)
 
 
输出:(12,34.56,'abc','xyz')


三、元组中的元素是不允许删除的,但可以使用del语句来删除整个元组
四、元组之间可以使用+和*,即允许元组进行组合连接和重复复制,运算后会生成一个新的元组

tup1=(1,2,3)
tup2=(3,4,5)
 
tup3=tup1+tup2 
tup4=tup1*3
print(tup3)
print(tup4)
 
输出:tup3=(1,2,3,3,4,5)
输出:tup4=(1,2,3,1,2,3,1,2,3)


五、元组运行切片操作

六、任意无符号的对象,以逗号隔开,默认为元组

a=1,2,3,'hello'
print(a) 
 
 
输出:(1,2,3,'hello')


 七、对元组进行操作的内建函数

——cmp(tup1,tup2): 比较两个元组元素

——len(tup): 返回元组中元素的个数

——max(tup): 返回元组中元素最大的值

——min(tup): 返回元组中元素最小的值

——tuple(seq): 将列表转化为元组

八、元组的方法(元组没有列表中的增、删、改的操作,只有查的操作)

——tuple.index(obj):从元组中找出某个值第一个匹配项的索引值

——tuple.count(obj): 统计某个元素在元组中出现的次数

字典 


 字典也是python提供的一种常用的数据结构,它用于存放具有映射关系的数据

一、创建字典:

dict={'name':'mike','age':12,'class':'First'}
print(dict['name'],dict['age'])


二、字典的常用方法
字典由dict类代表,因此我们同样使用dir(dict)查看该类包含哪些方法,在交互解释器中输入dir(dict)命令

dir(dict)
['clear', 'copy', 'fromkeys', 'get', 'items', 'keys', 'pop', 'popitem', 'setdefault', 'update', 'values']


(1)下面介绍dict的一些方法

clear()

cars = {'BMW':8.5,'BENS':8.3,'AUDI':7.9}
 
cars.clear()
print(cars)
get()

方法:其实就是根据key获取value,它想当于方括号的增强版,当使用方括号语法访问并不存在的key时,字典会引发keyError错误;但如果使用get()方法访问不存在的key,该方法会简单的返回None,不会导致错误

cars = {'BMW':8.5,'BENS':8.3,'AUDI':7.9}
 
print(cars.get('BMW'))
print(cars.get('dfdefe'))
print(cars['dkfjeife'])
 
update() 

方法:用于指定key对应的value,并删除key-value对

cars = {'BMW': 8.5, 'BENS': 8.3, 'AUDI': 7.9}
print(cars.pop('AUDI'))
print(cars) 
 
 
 
输出:7.9
输出:{'BMW': 8.5, 'BENS': 8.3


 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值