点击上方 蓝字关注我们

点击上方“印象python”,选择“星标”公众号重磅干货,第一时间送达!之前发过很多关于 Python 学习的文章,收到大家不少的好评,不过大家也有蛮多困惑:

我之前根本没接触过 Python,零基础能学的会 Python 吗?

入门 Python 该学哪些知识点?该看哪些书?

可以练手做项目的 Python 项目去哪里找?好用的爬虫工具又有哪些?

网上看了很多文章,但感觉没有个系统,号主有 Python 零基础入门资料推荐吗?

不得不说一句,现在学习Python的人越来越多了,市场需求也是逐渐增大。学好Python,可以进阶资深Python程序员,或者转型数据分析、人工智能等等。我也是自学过来,深知Python的多样性,也知道自学是个很辛苦的事情。下面就分享一些字符串连接方式给大家。在 Python 中字符串连接有多种方式,这里简单做个总结,应该是比较全面的了,方便以后查阅。

加号连接

第一种,通过+号的形式:

>>> a, b = 'hello', ' world'>>> a + b'hello world'

逗号连接

第二种,通过,逗号的形式:

>>> a, b = 'hello', ' world'>>> print(a, b)hello  world

但是,使用,逗号形式要注意一点,就是只能用于print打印,赋值操作会生成元组:

>>> a, b('hello', ' world')

python之禅注:实际上,这不算是字符串连接的一种方式,因为'hello', ' world'会当作一个元组存在,通过解包(unpacking)的方式赋值给变量 a 和 b.

直接连接

第三种,直接连接中间有无空格均可:

print('hello'         ' world')print('hello''world')

Python之禅注:这算是Python里面的一种语法糖,连续的字符串会自动拼接成一个字符串。在内存中不会存在两个字符串对象。(代码可左右滑动)

>>> def x():...     a = 'a''b'...>>> dis.dis(x)2           0 LOAD_CONST               1 ('ab')3 STORE_FAST               0 (a)6 LOAD_CONST               0 (None)9 RETURN_VALUE

百分号 %

第四种,使用%操作符。在 Python 2.6 以前,%操作符是唯一一种格式化字符串的方法,它也可以用于连接字符串。

print('%s %s' % ('hello', 'world'))

format函数

第五种,使用format方法。format 方法是 Python 2.6 中出现的一种代替 % 操作符的字符串格式化方法,同样可以用来连接字符串。

print('{}{}'.format('hello', ' world')

join函数

第六种,使用join内置方法。字符串有一个内置方法join,其参数是一个序列类型,例如数组或者元组等。

print('-'.join(['aa', 'bb', 'cc']))

f-string

第七种,使用f-string方式。Python 3.6 中引入了 Formatted String Literals(字面量格式化字符串),简称 f-string,f-string 是 % 操作符和 format 方法的进化版,使用 f-string 连接字符串的方法和使用 %操作符、format 方法类似。

>>> aa, bb = 'hello', 'world'>>> f'{aa} {bb}''hello world'

星号 *

第八种,使用*操作符。

>>> aa = 'hello '>>> aa * 3'hello hello hello '

Python之禅注:*操作符其实是一种操作符重载操作,对应的魔术方法是 __mul__

>>> a = [1]>>> a*2[1, 1]>>> a.__mul__(3)[1, 1, 1]

小结

连接少量字符串时,推荐使用+号操作符。如果对性能有较高要求,并且python版本在3.6以上,推荐使用f-string。例如,如下情况f-string可读性比+号要好很多:

a = f'姓名:{name} 年龄:{age} 性别:{gender}'b = '姓名:' + name + '年龄:' + age + '性别:' + gender

连接大量字符串时,推荐使用 join 和 f-string 方式,选择时依然取决于你使用的 Python 版本以及对可读性的要求。

回复下方 「关键词」,获取优质资源

回复关键词 「linux」,即可获取 185 页 Linux 工具快速教程手册和154页的Linux笔记。

回复关键词 「Python进阶」,即可获取 106 页 Python 进阶文档 PDF

回复关键词 「Python面试题」,即可获取最新 100道 面试题 PDF

回复关键词 「python数据分析」,即可获取47页python数据分析与自然语言处理的 PDF

回复关键词 「python爬虫」,满满五份PPT爬虫教程和70多个案例

回复关键词 「Python最强基础学习文档」,即可获取 168 页 Python 最强基础学习文档 PDF,让你快速入门Python

推荐我的微信号

来围观我的朋友圈,我的经验分享,技术更新,不定期送书,坑位有限,速速扫码添加!
备注:开发方向_昵称_城市,另送你10本Python电子书。

点个在看 你最好看

python 字符串拼接_面试官让用 3 种 python 方法实现字符串拼接 ?对不起我有8种……...相关推荐

  1. 生成唯一字符串算法_面试官问:在分布式场景,生成唯一ID,你有几种方案?...

    来源:http://t.cn/RG0AW0a 说明:本文代码采用C#,重要的是理解解决方案,代码实现都是次要的. 系统唯一ID是我们在设计一个系统的时候常常会遇见的问题,也常常为这个问题而纠结.生成I ...

  2. java m4a文件拼接_面试官:为啥不提倡字符串拼接?看阿里java开发手册怎么说

    阿里规约 先来看阿里java开发手册的第22条,循环体内,字符串的连接方式,使用 StringBuilder 的 append 方法进行扩展. 说明:下例中,反编译出的字节码文件显示每次循环都会 ne ...

  3. sqlserver2008未将对象引用设置到对象的实例_面试官:ThreadLocal 的内存泄漏是弱引用导致的,你确定?...

    面试官:ThreadLocal 了解吗? Python 小星:线程局部变量,多线程下能保证各个线程的变量相对独立于其他线程的变量. 面试官:那你说下它是如何保证线程隔离的? Python 小星:每个线 ...

  4. md5后得到的32位字符串存储到mysql中太占空间了_面试官:你对MySQL高性能优化有什么规范建议?...

    推荐阅读:吊打面试官!MySQL灵魂100问,你能答出多少? 文章篇幅较长,建议先收藏再找个合适的时间阅读 数据库命令规范 所有数据库对象名称必须使用小写字母并用下划线分割 所有数据库对象名称禁止使用 ...

  5. python 等待其他线程执行完_面试官:如何让线程顺序执行,join,还有其他办法吗?...

    面试官:如让线程顺序执行? 我:使用Thread的join方法. 面试官:除了join还有别的办法吗? 我:目前只用过join. 面试官:哦,那你了解CountDownLatch吗? 我:不了解,没使 ...

  6. python快速排序最简单写法_面试官:来,这位精神小伙,简简单单写个快速排序吧...

    当你的才华还撑不起你的野心时,你应该静下心去学习 . 面试现场,终于到了紧张刺激的手撕代码环节,你忐忑的心情随着考官的一句话归于平静. 你简直不敢相信眼前这个穿着格子衬衫,牛仔裤角有些发白,头发在风中 ...

  7. string字符串内容倒叙_面试官:string、stringbuffer和stringbuilder都不会,我招你干什么?...

    1.String类的特性 public final class Stringimplements java.io.Serializable, Comparable<String>, Cha ...

  8. qps是什么意思_面试官:说说你之前负责的系统,QPS 能达到多少?

    被面试官经常问到之前开发的系统接口 QPS 能达到多少,经常给不出一个数值,支支吾吾,导致整体面试效果降低? 原因基本是一些公司中,做完功能测试就完了,压根不会有性能测试这一步,或者说并发量较少,没有 ...

  9. python面试题_面试时全对这25道python面试题,成就了我月薪25K!附教程分享)

    之前面试的时候,面试官拿出一些python面试题对我说,只要全部正确直接给我20K,我一看题目笑了,居然全部都会,今天拿出来给大家分享一下~ 面试时全对这25道python面试题,成就了我月薪20K! ...

最新文章

  1. 美国加州大学圣克鲁兹分校王鑫教授招收NLP/CV方向全奖博士生
  2. CNN+CTC语音识别
  3. 4、连接Mysql数据库
  4. 腐蚀rust研究台抽奖_延迟焦化装置的腐蚀风险分析
  5. (JAVA)Math类
  6. python flask 分页前后端分离_【flask + vue 前后端分离博客】创建第一个 Flask RESTFul(一)...
  7. 如何硬盘安装windows server 2008和windows7
  8. 使用Intersection Observer API创建无限加载组件
  9. laravel 5.4 引入自定义类
  10. 动态规划 分享巧克力 4794_包装|颇具艺术欣赏性的巧克力创意包装设计
  11. mysql 定时备份和远程备份脚本
  12. 打开word2016文档时提示用文本恢复转换器打开文件
  13. 李彦宏计算机领域的贡献,李彦宏:AI让计算机懂得人、响应人的需求
  14. android xml画圆,Android自定义View画圆功能
  15. linux查看nas剩余大小,老徐玩NAS 篇二:我的群晖储存空间哪儿去了——100%破案的教程...
  16. POSCMS 邮件服务器配置
  17. 快速减肥的30种方法
  18. VueJs中的reactive函数
  19. Linux 批量处理dos2unix
  20. https攻击工具详解(arp欺骗、中间人攻击)(openssl+sslscan+sslsplit )

热门文章

  1. python人工智能方向面试准备_高薪直通车丨人工智能+Python面试经验分享(西安**思数据)...
  2. android 电视安装apk文件损坏,android - 无法在Android电视盒上安装APK - 堆栈内存溢出...
  3. android+壁纸拉伸,Launcher3自定义壁纸旋转后拉伸无法恢复
  4. Xcode模拟器相关操作
  5. Python-EEG工具库MNE中文教程(3)-MNE中数据结构Epoch及其用法简介
  6. idea网页预览功能_IDEA 2020.2 重磅发布,动画级新功能预览!
  7. AI独角兽第四范式冲刺港交所IPO!集齐国有五大行入股,刚获宁德时代制造大单...
  8. 高糊视频秒变4K,速度比TecoGAN快了9倍!东南大学提出新的视频超分辨率系统
  9. 不是所有图像都值16x16个词,清华与华为提出动态ViT
  10. 「人民的希望」首批临床结果公布:2/3重症10天内有效改善,一半以上摆脱呼吸机 | 新英格兰医学重磅...