在 Python 中拼接(连接)字符串很简单,可以直接将两个字符串紧挨着写在一起,具体格式为:

strname = “str1” “str2”

strname 表示拼接以后的字符串变量名,str1 和 str2 是要拼接的字符串内容。使用这种写法,Python 会自动将两个字符串拼接在一起。

【示例】以连续书写的形式拼接字符串:

  1. str1 = “Python教程” “http://c.biancheng.net/python/”
  2. print(str1)
  3. str2 = Java“Python” C++PHP
  4. print(str2)

运行结果:

Python教程http://c.biancheng.net/python/
JavaPythonC++PHP

需要注意的是,这种写法只能拼接字符串常量。

如果需要使用变量,就得借助+运算符来拼接,具体格式为:

strname = str1 + str2

当然,+运算符也能拼接字符串常量。

【示例】使用+运算符拼接字符串:

  1. name = “C++教程”
  2. url = “http://c.biancheng.net/cplus/”
  3. info = name + “的网址是:” + url
  4. print(info)

运行结果:

C++教程的网址是:http://c.biancheng.net/cplus/

Python字符串和数字的拼接

在很多应用场景中,我们需要将字符串和数字拼接在一起,而 Python 不允许直接拼接数字和字符串,所以我们必须先将数字转换成字符串。可以借助 str() 和 repr() 函数将数字转换为字符串,它们的使用格式为:

str(obj)
repr(obj)

obj 表示要转换的对象,它可以是数字、列表、元组、字典等多种类型的数据。

请看下面的代码:

  1. name = “C语言中文网”
  2. age = 8
  3. course = 30
  4. info = name + “已经” + str(age) + “岁了,共发布了” + repr(course) + “套教程。”
  5. print(info)

运行结果:

C语言中文网已经8岁了,共发布了30套教程。

str() 和 repr() 的区别

str() 和 repr() 函数虽然都可以将数字转换成字符串,但它们之间是有区别的:

  • str() 用于将数据转换成适合人类阅读的字符串形式。
  • repr() 用于将数据转换成适合解释器阅读的字符串形式(Python 表达式的形式),适合在开发和调试阶段使用;如果没有等价的语法,则会发生 SyntaxError 异常。

请看下面的例子:

  1. s = “http://c.biancheng.net/shell/”
  2. s_str = str(s)
  3. s_repr = repr(s)
  4. print( type(s_str) )
  5. print (s_str)
  6. print( type(s_repr) )
  7. print (s_repr)

运行结果:

<class ‘str’>
http://c.biancheng.net/shell/
<class ‘str’>
‘http://c.biancheng.net/shell/’

本例中,s 本身就是一个字符串,但是我们依然使用 str() 和 repr() 对它进行了转换。从运行结果可以看出,str() 保留了字符串最原始的样子,而 repr() 使用引号将字符串包围起来,这就是 Python 字符串的表达式形式。

另外,在 Python 交互式编程环境中输入一个表达式(变量、加减乘除、逻辑运算等)时,Python 会自动使用 repr() 函数处理该表达式。

原文地址:http://www.cnblogs.com/qlsh/p/16800644.html

1. 本站所有资源来源于用户上传和网络,如有侵权请邮件联系站长! 2. 分享目的仅供大家学习和交流,请务用于商业用途! 3. 如果你也有好源码或者教程,可以到用户中心发布,分享有积分奖励和额外收入! 4. 本站提供的源码、模板、插件等等其他资源,都不包含技术服务请大家谅解! 5. 如有链接无法下载、失效或广告,请联系管理员处理! 6. 本站资源售价只是赞助,收取费用仅维持本站的日常运营所需! 7. 如遇到加密压缩包,默认解压密码为"gltf",如遇到无法解压的请联系管理员! 8. 因为资源和程序源码均为可复制品,所以不支持任何理由的退款兑现,请斟酌后支付下载 声明:如果标题没有注明"已测试"或者"测试可用"等字样的资源源码均未经过站长测试.特别注意没有标注的源码不保证任何可用性