入门任何一门编程语言,前面总是离不开变量,字符串这些概念,而且这些东西在往后的日子里,有着至关重要的存在。因为不管我们写什么程序,都要用到变量以及字符串。

变量

  首先,我们的变量在定义的时候,是不需要给他定义类型的,也可以说,在赋值的时候,由“=”右边的赋值类型决定。

  然后Python与大多数其他计算机语言的做法有所不同,并不是把值存储在变量之中的,而是更像把名字“贴”在值的上边。所以,有些Python程序员会说Python没有变量,只有名字,变量就像是一个名字,通过这个名字,可以找到我们想得到的东西。

  请看例子:

>>> name = "CionDa"
>>> print (name)
CionDa
>>> name = "Cion"
>>> print (name)
Cion

  而变量为什么不叫恒量却叫变量呢??正是因为它是可变的!请看例子:

>>> first = 3
>>> second = 7
>>> second = 4
>>> third = first + second
>>> print (third)
7

  上面的例子,先创建一个变量(first),赋值3;接着创建另一个变量(second),先给它赋值为7,然后又赋值为4;最后创建一个变量(third),把first跟second的和赋值给third。而我们同样的例子可以运用到字符串拼接中:

>>> name_first = Cion
Traceback (most recent call last):
File "<pyshell#5>", line 1, in <module>
name_first = Cion
NameError: name 'Cion' is not defined
#在给变量赋值字符串的时候,我们要注意加双引号 >>> name_first = "Cion"
>>> name_second = "Da"
>>> myname = name_first + name_second
>>> print(myname)
CionDa

  

字符串

  我们的字符串即是引号内的东西,同时我们也把文本叫做字符串,而文本跟数字是不同的东西,请看例子:

>>> 3+7
10
>>> '3'+'7'
'37'
>>> "3"+"7"
'37'

  从上面例子我们可以看到,在字符(串)的两边必须加上引号,而单引号与双引号对字符(串)的使用是没有拘束的。但是必须成对存在,请看例子:

>>> 'Ci'+"on"
'Cion'
>>> 'Cion"+'Da'
SyntaxError: invalid syntax

   

  但是有时候当我们的字符串中,出现 单引号(') 的时候怎么办,解决这个问题有两个办法:

①使用转义符号(\)来对字符串中的引号进行转义(最常用的一种)

②既然我们的python是高级语言,那么高级语言就要有高级语言的亚子,所以我们在字符串中出现单引号(')时,我们可以利用双引号来赋值^_^

请看例子:

>>> 'I'am CionDa'
SyntaxError: invalid syntax
#报错
>>> 'I\'am CionDa'
"I'am CionDa"
#第一种解决办法
>>> "I'am CionDa"
"I'am CionDa"
#第二种解决办法

  

原始字符串

  这样看起来反斜杠(\)是个好东西,但是真的是这样么:

#①
>>> string = 'C:\Python'
>>> string
'C:\\Python'
>>> print (string)
C:\Python
#②
>>> str = 'D:\new'
>>> str
'D:\new'
>>> print (str)
D:
ew

  看①输出是没什么问题的,但是二却出乎我们的意料,变成了换行,我们想想在初学C语言的时候,我们的\n是什么意思(没错就是换行),当我们在python里面输入\n时,python也一样(因为python是C语言写出来的,有其父必有其子嘛)。所以我们这里也可以用到转义字符,但是如果出现下面②的情况怎么办,请看例子:

#①
>>> str = 'D:\\new'
>>> str
'D:\\new'
>>> print (str)
D:\new
#②
>>> string = 'D:\\new\aaa\bbb'
>>> string
'D:\\new\x07aa\x08bb'
>>> print (string)
D:\newaabb
#③
>>> #或者你们又会想,每个前面加‘\’即可了,没错,但是要是路径深呢
>>> string = 'D:\\new\\aaa\\bbb\ccc\\ddd\\eee'
>>> string
'D:\\new\\aaa\\bbb\\ccc\\ddd\\eee'
>>> print (string)
D:\new\aaa\bbb\ccc\ddd\eee
#④
>>> #而我们python这里有一种办法可以解决,就在引号前加‘r’
>>> string = r'D:\new\aaa\bbb\ccc\ddd\eee'
>>> string
'D:\\new\\aaa\\bbb\\ccc\\ddd\\eee'
>>> print (string)
D:\new\aaa\bbb\ccc\ddd\eee

  

  当我学会字符串后,我的诗意大发,便想吟诗一首:

  青青园中葵,朝露待日晞。
  阳春布德泽,万物生光辉。
  常恐秋节至,焜黄华叶衰。
  百川东到海,何时复西归?
  少壮不努力,老大徒伤悲。

诗意一来,便想写进python里跑一跑

>>> print ("青青园中葵,朝露待日晞。\n阳春布德泽,万物生光辉。\n常恐秋节至,焜黄华叶衰。\n百川东到海,何时复西归?\n少壮不努力,老大徒伤悲。")
青青园中葵,朝露待日晞。
阳春布德泽,万物生光辉。
常恐秋节至,焜黄华叶衰。
百川东到海,何时复西归?
少壮不努力,老大徒伤悲。
>>> #那么累,下次我再也不吟诗了,再也不在程序里跑古人的诗词了
>>> print ("""
青青园中葵,朝露待日晞。
阳春布德泽,万物生光辉。
常恐秋节至,焜黄华叶衰。
百川东到海,何时复西归?
少壮不努力,老大徒伤悲。
""") 青青园中葵,朝露待日晞。
阳春布德泽,万物生光辉。
常恐秋节至,焜黄华叶衰。
百川东到海,何时复西归?
少壮不努力,老大徒伤悲。 >>> #但是我们的python就是强大,不允许我放弃学习

  

Python Day_2的更多相关文章

  1. day_2安装Python解释器和pycharm

    首先我们复习一下昨天的内容 ···重点 1:进制转换:二进制 与 十六进制 1111  0101 1010 转换为 f5a 2:内存分布:堆区 和 栈区 计算机的原理: 控制器 运算器 存储器 inp ...

  2. Python中的多进程与多线程(一)

    一.背景 最近在Azkaban的测试工作中,需要在测试环境下模拟线上的调度场景进行稳定性测试.故而重操python旧业,通过python编写脚本来构造类似线上的调度场景.在脚本编写过程中,碰到这样一个 ...

  3. Python高手之路【六】python基础之字符串格式化

    Python的字符串格式化有两种方式: 百分号方式.format方式 百分号的方式相对来说比较老,而format方式则是比较先进的方式,企图替换古老的方式,目前两者并存.[PEP-3101] This ...

  4. Python 小而美的函数

    python提供了一些有趣且实用的函数,如any all zip,这些函数能够大幅简化我们得代码,可以更优雅的处理可迭代的对象,同时使用的时候也得注意一些情况   any any(iterable) ...

  5. JavaScript之父Brendan Eich,Clojure 创建者Rich Hickey,Python创建者Van Rossum等编程大牛对程序员的职业建议

    软件开发是现时很火的职业.据美国劳动局发布的一项统计数据显示,从2014年至2024年,美国就业市场对开发人员的需求量将增长17%,而这个增长率比起所有职业的平均需求量高出了7%.很多人年轻人会选择编 ...

  6. 可爱的豆子——使用Beans思想让Python代码更易维护

    title: 可爱的豆子--使用Beans思想让Python代码更易维护 toc: false comments: true date: 2016-06-19 21:43:33 tags: [Pyth ...

  7. 使用Python保存屏幕截图(不使用PIL)

    起因 在极客学院讲授<使用Python编写远程控制程序>的课程中,涉及到查看被控制电脑屏幕截图的功能. 如果使用PIL,这个需求只需要三行代码: from PIL import Image ...

  8. Python编码记录

    字节流和字符串 当使用Python定义一个字符串时,实际会存储一个字节串: "abc"--[97][98][99] python2.x默认会把所有的字符串当做ASCII码来对待,但 ...

  9. Apache执行Python脚本

    由于经常需要到服务器上执行些命令,有些命令懒得敲,就准备写点脚本直接浏览器调用就好了,比如这样: 因为线上有现成的Apache,就直接放它里面了,当然访问安全要设置,我似乎别的随笔里写了安全问题,这里 ...

随机推荐

  1. sqlite 初

    1.SQLite是什么 基于文件的轻型数据库 无服务器  零配置  支持事务  开源 2.SQLite 怎么用   2.1 安装 SQLite官网上下载对应的DLL 与工具 配置环境变量 安装完成以后 ...

  2. Centos上通过shell脚本实现数据库备份和还原

    最近有个这样的需求,通过shell脚本实现数据库备份还原,最后通过网上查询自己测试实现,将脚本分享给大家 1.数据库备份脚本 #!/bin/bash ds=`` list=`date +%Y`/`da ...

  3. Grokking PyTorch

    原文地址:https://github.com/Kaixhin/grokking-pytorch PyTorch is a flexible deep learning framework that ...

  4. 笔记:认识.NET平台

    认识.NET平台先了解一堆技术术语和缩写 http://www.cnblogs.com/dbycl/p/6419456.html 天生不跨平台的.NET Framework 2.大家都来开发新语言 3 ...

  5. virtualbox 安装 extension pack 方法以及出现 "The installer failed with exit code 1: VBoxExtPackHelperApp.exe: error: Failed to rename the temporary directory to the final one"的解决办法

    virtualbox 的版本:5.1.26    下载地址:https://www.virtualbox.org/wiki/Downloads extension pack 的版本:5.1.26   ...

  6. Setting up multi nodes live migration in Openstack Juno with devstack

    Setting up multi nodes live migration in Openstack Juno with devstack Summary Live migration overvie ...

  7. 35+个实用jQuery菜单插件

    应用jQuery菜单插件可以让浏览者在浏览你的网页时获得最好的动态导航.jQuery是一个轻量级.跨浏览器的JavaScript框架(库),效果非常给力,它强调并简化了JavaScript.CSS和H ...

  8. reset.css(样式重置)

    CSS Reset,意为重置默认样式.HTML中绝大部分标签元素在网页显示中都有一个默认属性值,通常为了避免重复定义元素样式,需要进行重置默认样式(CSS Reset).举几个例子:1.淘宝(CSS ...

  9. Spark之json数据处理

    -- 默认情况下,SparkContext对象在spark-shell启动时用namesc初始化.使用以下命令创建SQLContext. val sqlcontext = new org.apache ...

  10. 【webAssembly系列】webAssembly初探究竟

    一.前言 自从JavaScript诞生开始,到现在开始变成流行的编程语言,背后的是web发展所推动的.web应用的变得更多更复杂,但是渐渐暴露出JavaScript的问题: (1)语法太灵活导致开发大 ...