变量和字符串(一)

标签:
标识符pythonprint()代码type()杂谈 |
分类: 学会快乐 |
(一)变量
简单地说,变量就是编程中最基本的存储单位,变量会暂时性地储存你放进去的东西
《银河系漫游指南》里面说“生命宇宙以及任何事情的终极答案是42”,如果用编程语言来表达的话,就是如下等式,一个叫做“answer”的变量被赋值为42正如每个人都有姓名一样,变量的名字叫做标识符:
现在我们来试着给变量赋值为了最简单的完成这一步,Windows用户请打开命令行输入Python并回车,Mac用户打开终端输入Python3并回车,然后输入:
>>> a=12 |
这样就完成了a的赋值,试着回车换行并输入‘a’,再回车之后,你会看到赋值的结果是12
>>> a 12 |
需要注意的是:Python对大小写敏感,也就是说“a”和“A”会是两个不同的变量,而不是同一个这样,你就学会给变量起名字了,并且他们随叫随到
>>> A=15;a=16 >>> A 15 >>> a 16 |
(二)print()
打印是Python中最常用的功能,顾名思义,我们现在就简单把print()这个功能理解为展示打印的结果使用方法是把你要打印查看结果的对象塞进括号中,这样就可以了(如果你的print不用括号也能使用,请检查你的Python版本,为了方便快速理解编程概念和少走弯路,后面的所有例子都会用Python3.x实现)
如果你使用命令行或终端直接输入print(a),你会得到下图的结果这是因为你漏掉了变量的赋值,Python是无法打印不存在的对象的
>>> print(a) Traceback (most recent call last):
NameError: name 'a' is not defined >>> |
在今后的学习中我们还有很多很多的东西要进行“打印”,我们需要知道要打印的东西是什么即便变量是最容易理解的基础知识,也不要因为简单就随意命名,一定要保持Python的可读性
>>> file=open('/Users/yourname/Desktop/file.txt','w') >>> file.write('hello world') |
看看上面这段代码,即便你现在不知道其中一些细节,但是读了一遍之后,你也能大概猜到这段代码做了什么事情吧?这是你敲的第一段代码,所以在这里多说几句
首先需要注意语法问题,使用英文标点符号大小写不要出错空格不能少其次要注意文件路径问题,你的桌面上不需要有flle.txt这个文件,但你需要知道你的电脑上桌面文件的路径是什么,然后把/Users/yourname/Desktop/替换掉
查看文件路径的方法是,windows用户用资原管理器打开桌面上的一个文件,查看路径Mac用户打开终端terminal,然后把桌面上的某个文件拖搜进去就可以查看到路径这段代码打开了桌面上的flle.txt文件,并写入了Hello World。“w”代表着如果桌面上有flle.txt这个文件就直接写入hello world;如果没有flle.txt这个文件就创建一个这样的文件
互联网上有着诸多的代码和教程,但如果你没能一眼看懂这段代码是什么意思,其中有一多半是因为变量命名不清楚造成的因此在随后的教程中,哪怕很啰嗦,我们也会使用清晰的命名方式,从而来保证即使是没有计算机基础的人,也能够理解代码要保持良好的命名习惯应该尽量使用英文命名,学编程的同时还能背单词,岂不一举两得,过一阵子你就会发现英文教程也会阅读得很顺畅
(三)字符串
(1)字符串是什么?
在上面我们已经初步接触到了字符串,很简单地说,字符串就是“任何在这双引号之间的文字”或者‘单引号其实和双引号完全一样’再或者‘‘‘三个引号被用于过于长段的文字或者是说明,只要三引号不完你就可以随意换行写下文字’’’。
(2)字符串的基本用法
现在我们来试着了解一些字符串的基本用法——合并请在你的IDE(也就是前面推荐的PyCharm)中输入如下代码,在IDE中代码井不能自动运行,所以我们需要手动点击运行,方法是点击右键,选择“Run‘文件名’”来运行代码
>>> his_name = 'Robert Johnson';what_he_does = ' plays ';his_instrument = 'guitar' >>> artist_intro = his_name what_he_does his_instrument >>> print(artist_intro) Robert Johnson plays guitar |
你会发现输出了这样的结果:也许你会觉得无聊,但实际上这段代码加上界面之后是下图这样的,类似于你在音乐播放器里面经常看到的样子Robert
Johnson是著名的美国蓝调吉他手,被称为与魔鬼交换灵魂的人。
也许你已经注意到了,上面我们说到变量的时候,有些变量被进行不同形式的赋值我们现在试着在IDE中这样做:
>>> num = 1 >>> string = '1' >>> print(num string) |
你一定会得到如下的结果,原因是字符串(string)只是Python中的一种数据类型,另一种数据类型则称之为整数(integer),而不同的数据类型是不能够进行合并的,但是通过一些方法可以得到转换
>>> num = 1 >>> string = '1' >>> print(num string) Traceback (most recent call last):
TypeError: unsupported operand type(s) for : 'int' and 'str'
>>> |
插一句,如果你不知道变量是什么类型,可以通过type()函数来查看类型在IDE中输入print(type(word))。
>>> string = '1' >>> print(type(string)) >>> num = 1 >>>
print(type(num)) |
另外,由于中文注释会导致报错,所以需要在文件开头加一行魔法注释#coding:utf-8,也可以在设置里面找到“File Encodings”设置为UTF-8
接下来,我们来转化数据类型我们需要将转化后的字符串储存在另一个变量中,试着输入这些:
>>> num = 1 >>> string = '1' >>> num2 = int(string) >>> print(num num2) 2 |
这样被转换成了同种类型之后,就可以合并这两个变量了
我们来做一些更有意思的事情,既然字符串可以相加,那么字符串之间能不能相乘?当然可以!输入代码:
>>> words = 'words ' * 3 >>> print(words) words words words |
好,现在我们试着解决一个更复杂的问题:
>>> word = 'a loooooooong word' >>> num = 12 >>> string = 'bang!' >>> total = string * (len(word) - num) >>> print(total) bang!bang!bang!bang!bang!bang! |