2.1 变量和简单类型
如下是李刚老师《疯狂python讲义》的学习笔记
如有侵权,联系删除
努力是信仰,坚持是脚步,代码改变世界
注释:单行注释:开头加#
多行注释:前一行后一行加''' '''
python是弱类型语言:弱类型语言有两个典型特征:首先是变量无需声明类型,就可直接赋值,其次是变量的类型可以动态改变,且不用声明
type(a)命令可以查看变量的类型
print()函数:可以同时输出多个不同类型的量以字符串的形式,默认以空格分开,其次,print函数还可以输出内容到某个文件内。
matlab中要用num2str()函数,disp()函数
>>> user_age = 8;
>>> print('年龄:',user_age);
年龄: 8
变量的命名规则:必须以字母,下划线开头,后边跟任意字母,数字和下划线,区分大小写,支持中文等
python3支持UTF-8字符集,
数值类型:python只区分整数型,浮点型(小数和科学计数),复数
对于整形,并不区分什么长整型短整型,允许不同进制的数据操作,添加相应开头标识即可,且为了提高数据可读性,1_000_000 == 1000000
对于复数,需要导入cmath模块,才能进行复数的各种运算
>>> import cmath
>>> ac3 = cmath.sqrt(-1)
字符串入门:python中字符串可以使用单引号,双引号,三引号,只要两边的引号能配对就行。
拼接字符串,使用 +
str()函数,将数值转化为字符串
获取用户输入input(): msg = input("请输入你的值:")
python中 \ 一般被认为是转义字符,所以路径字符串要写成: G:\\publish\\codes,对于只用单个\是不行的,或者使用 r' G:\publish\codes
字节串:字节串存的都是二进制的字节,而字符串存的是字符,二进制的字节所表达内容由程序决定。
深入使用字符串: 转义字符 \n 代表换行
字符串格式化: 如下代码,%6s 是放置在字符串中的占位符, s代表讲后边要赋给的东西变成字符串,6代表,在这个位置总共放6的位置用来放数据,数据没有那么宽时就空着, 第二个%是分隔符, num代表要赋给前边字符串占位符的数据。
num = -28 print("num is: %6s" % num)
索引字符串:[位置Id] 从左到右是0~1,从右到左是-n~-1,支持两种顺序混用,:代表到末尾,还可以指定步长来索引[2:3:9]
字符串其他操作:in来判断是否包含某个子串 print('a' in 'ab')
len来判断字符串长度 print(len('ab'))
min和max判断字符串中最小字符和最大字符
类和查找帮助:dir()列出指定类或模块包含的全部内容,如str就是代表字符串类,dir(str)命令给出了这个类的所有操作命令和使用方法,其中_开头_结尾的方法被约定成私有方法,不希望被外部直接调用,其他的方法均可直接调用,
而且调用方法很简单,如title()命令是将每个单词的首字母改为大写,使用时就是 'a b'.title(),不知道某个命令如何使用时,使用 help(str.title)命令即可输出使用方法。
从这里看出,对于str.mingling(),python有很多种命令来使用,所以对于字符串操作时,可以先查查有没有这个命令。
赋值运算符: = ,基础功能外,python支持连续赋值, a= b=c =20
算术运算符:+ ,还可用于拼接两个字符串
*,还可表示对字符串进行复制操作, 'ab'*3 >>> ab ab ab
/,就是普通的除法,//,是只取整数部分
%,就是求余, -5.2%-3.1
**,乘方运算,相当于matlab的.^
当然,这些运算符可以进行简写合并, +=,就是从左到右,先+之后在=
比较运算符: != 这个是不等 ,就是matlab中的~= ,
is is not 判断两个比较者的所在内存地址是否相同。
逻辑运算符: and or not 感觉python就是想把多个命令融合到一句长句子中
>>> bookName = '疯狂python'
>>>price = 79
>>>version = '正式版'
>>> if bookName.endwith('python’) and (price < 50 or version == '正式版'): 这里的意思是 bookname字符串的最后是不是‘python’,,与
print('√')
>>>else:
print('×')
三目运算符:实际就是if else 语句的简写形式
True_statements if expression else False_statements
就是满足expression运算表达式,就运行True_statement,否则运行False_statements
in运算符:判断某个成员是否位于序列中