python,基础-字符串(1)
一.字符串就是一系列字符。在Python中,用引号括起的都是字符串,其中的引号可以是单引号,
也可以是双引号
我们知道,python以方便著称,它的每一个设计一定有它的用意,当我看到这句话时,就在想,这种设定的用意是什么。为什么别的语言没有的设定python就有了。
在书中是这么说的:这种灵活性让你能够在字符串中包含引号和撇号
当时我还不太明白,于是打开了idea,dev-c++,pycharm,三种语言进行比较。然后发现,c和java要想输出 This is a string,“123456” 这样包含双引号的字符串,就必须用转义字符
String s="This is a string,\“123456\” “;
把引号转义过来。
而python因为多了’ ’ 也可以表示括住的是字符串,所以可以直接在’'里写”"而不需要转义,即
s2=‘This is a string,“123456”’
二.字符串的常用函数
当我在一个字符串后表面点一下之后,pycharm出现该画面:
于是我决心把它出现的函数都搞懂。
1.lower()
它的作用是把字符串的所有大写字母都转成小写字母
2.upper()
与lower()作用相反
3.format()
在python里,这是一个格式化字符的方法,但是我觉得叫它格式化函数并不准确,准确地说,它应该是填充格式化内容的函数。
什么是格式?
请假条有请假条的格式,检讨书有检讨书的格式。我们先来看一张请假条的图片:
这就是请假条的格式
格式是死的,信息是活的,所以在程序里,我们用format函数去填好这张请假条,这样,请假条代码只需要写一次,就可以给无数人使用。我猜测,网上请假,就是用format填充函数去请的。我们输入的信息就是format的参数。
顺便提一句,在python里,用"""三对引号就可以任意像平时在纸上写字那样分行。
补充知识:input()函数就是输入函数,x=input(),x就等于你等下在控制台输入的值。括号里可以写提示文字,等下你们看见程序结果就知道了。代码如下:
s="""尊敬的{0}老师:我是{1}班学生,我叫{2},因{3}事情需请假,我家住在{4},联系电话{5}。出行方式:{6}离校时间:{7},返校时间:{8}。班主任签字: 年级主任签字: 请假人:{9}{10}年{11}月{12}日"""
tsurname=input("请输入老师的姓氏:")
cnumble=input("请输入你所在的班级:")
myname=input("请输入你的姓名:")
reason=input("请输入请假原因:")
address=input("请输入家庭地址:")
phone=input("请输入联系电话:")
mode=input("请输入出行方式:")
leavetime=input("请输入离校时间:")
returntime=input("请输入返校时间:")
print("请输入落款时间:")
x=input("年:")
y=input("月:")
z=input("日:")
print(s.format(tsurname,cnumble,myname,reason,address,phone,mode,leavetime,returntime,myname,x,y,z))
运行结果:
这就是程序输出结果。怎么样?还是有点好玩的。另外,format的功能比这更加全面。
第一,{}里的数字是函数参数的索引,如果交换,填充的内容也会交换,比如你写了如下代码:
s='这次选美大赛的前4名是:{0},{1},{2},{3}'
print(s.format('林黛玉','薛宝钗','刘亦菲','上官婉儿'))
运行出如下结果:
突然你觉得你们家婉儿才最好看,而你又刚好不喜欢林妹妹悲切的气质,于是你想把她二人的名次换一下,那么不需要移动姓名,只需要动两个数字就行:
s='这次选美大赛的前4名是:{3},{1},{2},{0}'
print(s.format('林黛玉','薛宝钗','刘亦菲','上官婉儿'))
结果如下:
再强调一下,{}里的数字不是指括号的个数,而是format()函数()里参数的索引,就像数组的下标一样。此图为证
第二,它可以用key来填充
不知道key是啥的没关系,简单地说它就是一个索引,只不过这个索引可以是指明的汉字或其它符号,而不会限制于数字。
s='{name}好呀,你有{object}吗'
print(s.format(name='小帅哥',object='女朋友'))
运行结果:
同样,我好奇用key比用数字索引有什么方便之处,然后发现它因为函数参数指明了变量名,所以函数括号里的内容不用按顺序来写,我把object写在前面,name写在后面,不过因为我只调换了变量名,没调换内容,所以输出的句子有点怪
第三,可以用列表来填充
没学列表没关系,它其实就是其它语言里的数组。
list0=['一年级','二年级','三年级','四年级','五年级','六年级']
print('{list[0]}的小偷,{list[1]}的贼,{list[2]}的美女没人追,{list[3]}的帅哥一大堆,{list[4]}的情书满天飞,{list[5]}的情侣一对对'.format(list=list0))
print('{0[0]}的小偷,{0[1]}的贼,{0[2]}的美女没人追,{0[3]}的帅哥一大堆,{0[4]}的情书满天飞,{0[5]}的情侣一对对'.format(list0))
两行print表示两种用列表填充的方式,用0来替代字符串里的列表名也是挺方便的。运行结果如下:
第四,可以用字典来填充
字典没学的同学以后再来看吧,我继续讲我的
dict={'a':'一片雨','b':'谁梦里'} #字典
s='你挥毫{name[a]},随风去入{name[b]}'
print(s.format(name=dict))
注意name 和 dict 的 key一定要一样。运行结果:
第五,魔法参数的用法
list=['我','你']
dict={'a':'人间','b':'天堂'}
print('{}在{a}彷徨,寻不到{}的{b}'.format(*list,**dict))
运行结果如下:
可以看到,用到列表或者字典时,用魔法参数*list,**dict要方便地多
再上一个单独用地例子:
python,基础-字符串(1)相关推荐
- 重温Python基础——字符串
哈喽,兄弟们, 本文带大家复习一下Python基础中的字符串,不知道大家还记得多少内容呢? 字符串 1.字符串就是一系列字符 在python中,用引号括起的都是字符串,其中引号可以是单的,也可以是双的 ...
- python 基础 字符串烧烤流程
字符串详细解答及有关函数 表现形式 特殊情况的输出:转义字符 输入输出 读取与切片 字符串修改及删除 字符串常用函数解析 常用内置函数 大白话和你一起学python,最基础的内容,希望和大家一起学习, ...
- Python基础-字符串(字符串常用函数/操作/字符串遍历)
字符串就是一串字符, 表示文本类型的数据, 可以用"一对双引号"或者'一对单引号'定义一个字符串, 字符串定义格式为 字符串变量名 = '字符串的文本内容' 常用函数/操作 获取字 ...
- Python基础——字符串的使用
一.字符串的驻留机制 在Python中字符串是基本数据类型,是一个不可变的字符序列,即不具备增删改等操作. 什么叫字符串驻留机制? 仅保存一份相同且不可变字符串的方法,不同的值被存放在字符 ...
- python基础字符串(二)
解释: 如何定义字符串,单引号和双引号,三个单引号. "\" 反斜杠是转义的意思 # 这里\n是换行 b = '''hhehe\nlala'''# 反斜杠的使用 c = " ...
- Python基础——字符串、列表、元组
字符串常用方法 主要包括:replace.find.count.split.partition.upper.lower.strip.join.format - replace(old,new) 对字符 ...
- Python基础----字符串
a = dir(str) print ('str常用的方法:') for i in a:if i[0] != '_':print (i) str常用的方法: capitalize casefold c ...
- python基础===字符串的制表,换行基础操作
\n\t 制表符和换行符 >>> print("Languages:\n\tPython\n\tC\n\tJavaScript") Languages:Pytho ...
- python基础: 字符串操作
字符串 定义: 使用引号括起来的一串字符 一对单引号.一对双引号.三对单引号.三对双引号 转义:使用 '\',使原来有特殊含义的字符变成普通字符,也可以在定义字符串的前面加一个'r' 字符串拼接 s1 ...
- Python基础----字符串填充的几种方法
背景介绍 在有些时候,我们需要固定长度的字符串作为某些后续步骤的输入,但是手头的字符串很可能是变长的,因此在这种情况下,我们就需要使用某些方法对字符串进行填充,使其长度符合要求.下面介绍几种在pyth ...
最新文章
- 硬盘FAT32转NTFN格式的命令
- 【新星计划】MATLAB plot绘制图像
- TCP/IP的四层负载均衡
- 使用记事本写java程序并编译运行过程
- 获取字段_数据库中敏感字段的标记、标示
- LeetCode Min Stack 最小值栈
- CAD迷你画图2019破解补丁|CAD迷你画图2019r3注册机下载
- IE浏览器打开网页之后,右键,选择“查看源文件”后打开桌面窗口的问题
- 数据结构与算法(回文数与括号匹配问题)
- ajax dojo deferred,Dojo学习-14:Ajax with dojo/request
- 数学分析:有理数的稠密性证明
- 萌新小白学3D建模需要什么软件,十年经验建模师为你解答,速看
- 云养猫云养狗,一个可以救助流浪猫猫和狗狗的平台
- 5G-SUPI-SUPC-IMSI
- 全面了解超声波传感器
- 中国物联网微控制器市场现状研究分析与发展前景预测报告(2022)
- 利用python在网上接单赚钱,兼职也能月入过万,还不赶紧学起来...
- SEO优化 - robots协议
- NAS存储中如何启用多媒体服务器?
- PyQt5 QThread
热门文章
- OD CE找数据总结(上)
- 计算机网络学生机怎样连接总机,极域课堂管理系统怎么连接老师 学生端连接问题解决方法...
- B2C商城项目源码,基于Java开发的高可用分布式B2C商城系统,Java+Spring MVC+Dubbo+Zookeeper+MySQL+Redis+FastDFS+Nginx+Solr
- 传奇人物李兴平5000万卖掉hao123后在做什么
- 如何做好创业公司CEO - 量力而行
- python找不到指定模块sklearn怎么办_python中sklearn找不到指定模块怎么办
- 如何判断自己外网IP是否为真实公网IP,以及解决方案
- java流意外结束_SyntaxError:输入节点js的意外结束
- Docker教程(二):docker常用命令
- SpringBoot 项目修改html后不需要重新启动(热部署)