Python中单引号和双引号

在Python中我们都知道单引号和双引号都可以用来表示一个字符串,比如

str1 = 'python'
str2 = "python"

str1和str2是没有任何区别的。

我们知道Python以其易用性而著名,所以刚开始看教程学习看到单引号和双引号都可以使用会以为这是Python为了方便程序员,随便用哪个就好,不用担心用错。其实,背后的原因不只是这么简单。举个例子,想想I’m a big fans of Python.这个字符串应该怎么定义。

单引号版本:

str3 = 'I\'m a big fan of Python.'

可以注意到,原来的字符串中有一个’,而Python又允许使用单引号’ ‘来表示字符串,所以字符串中间的’必须用转移字符\才可以。字符串中间只有一个’,这样写看起来还好,但是如果是We all know that ‘A’ and ‘B’ are two capital letters.这个字符串呢?

str4 = 'We all know that \'A\' and \'B\' are two capital letters.'

怎么样,是不是看起来就很不好看,而且很容易出错了?这个时候就是双引号也可以表示字符串该体现作用的时候了。下面是str4的双引号版本:

str4_ = "We all know that 'A' and 'B' are two capital letters."

这样是不是看起来就人性化多了?没错,这就是Python支持双引号和单引号都能用来定义字符串的原因。

反之,如果字符串中有双引号,为了避免使用转义符,你可以使用单引号来定义这个字符串。比如:

str5 = 'The teacher said: "Practice makes perfect" is a very famous proverb.'

这就是Python易用性和人性化的一个极致体现,当你用单引号’ ‘定义字符串的时候,它就会认为你字符串里面的双引号” “是普通字符,从而不需要转义。反之当你用双引号定义字符串的时候,就会认为你字符串里面的单引号是普通字符无需转义。
————————————————
版权声明:本文为CSDN博主「邓无邪」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/woainishifu/article/details/76105667

跟随教程练习的Python小小小程序

sercet_word = "test"
guess = ""
guess_count = 0
guess_limit = 3
out_of_guesses = False
while guess != sercet_word and not out_of_guesses:
    if guess_count < guess_limit:
       guess = input("Guess the word: ")
       guess_count += 1
    else:
        out_of_guesses = True
if out_of_guesses:
    print("Out of guesses,You lose!")
else:
    print("You Win!")

跟随教程练习了这么一个小程序,将if、loop、input等都运用上了,虽然很简单,但是尽量让自己的思维方式与程序员靠近。

双击dwg文件打开一个新窗口

构思这个文章的时候,竟然卡在了标题这里。因为这带出一个存在已久的问题,就是程序员与设计师表达完全不是一个思路,很多时候用设计师描述的关键词根本无法在软件的帮助里找到相关内容,因此,斟酌了一下,还是用这么直白的语言作为本文标题吧。

宏岚的一个小伙伴近日重装了系统,然后反馈了这个问题,双击dwg文件,都会新打开一个autocad的窗口,问我如何解决:

首先这样问问题就很有问题,不说明系统运行环境,这样问问题就是在搞事情。就以这个问题为例,如果我耐心的回复是这样的:

这个要看你什么系统,还有autocad的版本,情况如下:

  1. xp系统,是cad的系统变量出了问题,sdi改为0就好了。
  2. Windows7,由于系统权限的问题,开始,运行,uac(用户账户控制),拖拽到最下方,重启电脑即可。
  3. windows8(如果还有人用这个的话,我也很服气)、Windows10,系统权限管理更加严格了,uac继续拉到最下方,然后还要在Autocad与天正的快捷方式上点右键,特性,兼容性,以管理员身份运行左侧的框框取消勾选。重启后,即可。
  4. 当然,2、3条也有可能伴随着第一条,自己检查即可。

这个问题解决了,然后回来继续说事儿,正常问个问题,谁会这么耐心的写这么一大段,然后给你分析各种情况呢?

是不是问问题之前先分析一下情况,然后发问之前,先说一下基本情况呢?

这样问问题我就不会想打人了,直接第三条回复一下就好了。

补充一下:群里回复了问题之后,另外一个小伙伴发了一个链接,说百度一下就好了,我们来看看百度出来个啥:

第一种方法没问题,第二个无异于饮鸩止渴。完全不考虑系统安全性了。