python学习笔记

注释使用#
python约定坚持使用4个空格的缩进(格式化)
转义字符可以转义很多字符,比如 表示换行, 表示制表符,字符本身也要转义,所以表示的字符就是
Python还允许用r”表示”内部的字符串默认不转义
如果字符串内部有很多换行,用 写在一行里不好阅读,为了简化,Python允许用”’…”’的格式表示多行内容
同一个变量可以反复赋值,而且可以是不同类型的变量
两种除法:/ 浮点除法,结果为浮点数,// 地板除,结果为整数

Unicode把所有语言都统一到一套编码里,但最常用的是用两个字节表示一个字符(如果要用到非常偏僻的字符,就需要4个字节)。

现代操作系统和大多数编程语言都直接支持Unicode。
相比于ascii码编码的数据,只需要在前面补0即可得到unicode码,但是如果使用全英文文本,unicode码会消耗多一倍的空间。
于是,又出现了utf-8编码,为可变长编码,UTF-8编码把一个Unicode字符根据不同的数字大小编码成1-6个字节,常用的英文字母被

编码成1个字节,汉字通常是3个字节,只有很生僻的字符才会被编码成4-6个字节。如果你要传输的文本包含大量英文字符,用UTF-8

编码就能节省空间。
在计算机内存中,统一使用Unicode编码,当需要保存到硬盘或者需要传输的时候,就转换为UTF-8编码。
所以你看到很多网页的源码上会有类似 的信息,表示该网页正是用的UTF-8编码。

python中,ord()函数获取字符的编码表示,chr()函数把编码转换为对应的字符
由于Python的字符串类型是str,在内存中以Unicode表示,一个字符对应若干个字节。如果要在网络上传输,或者保存到磁盘上,就需要把str变为以字节为单位的bytes。
Python对bytes类型的数据用带b前缀的单引号或双引号表示。
以Unicode表示的str通过encode()方法可以编码为指定的bytes
如果我们从网络或磁盘上读取了字节流,那么读到的数据就是bytes。要把bytes变为str,就需要用decode()方法:

要计算str包含多少个字符,可以用len()函数
len()函数计算的是str的字符数,如果换成bytes,len()函数就计算字节数

为了避免乱码问题,应当始终坚持使用UTF-8编码对str和bytes进行转换。

由于Python源代码也是一个文本文件,所以,当你的源代码中包含中文的时候,在保存源代码时,就需要务必指定保存为UTF-8编码。当Python解释器读取源代码时,为了让它按UTF-8编码读取,我们通常在文件开头写上这两行:

!/usr/bin/env python3

-- coding: utf-8 --

第一行注释是为了告诉Linux/OS X系统,这是一个Python可执行程序,Windows系统会忽略这个注释;
第二行注释是为了告诉Python解释器,按照UTF-8编码读取源代码,否则,你在源代码中写的中文输出可能会有乱码。
申明了UTF-8编码并不意味着你的.py文件就是UTF-8编码的,必须并且要确保文本编辑器正在使用UTF-8 without BOM编码:

格式化字符串输出,类似于c语言
‘Hi, %s, you have Hi,Michael,youhave‘Hi,Michael,youhave1000000.’
区别在于,百分号 % 用于格式化字符串
如果要输出字符百分号 % 需要转义 用%%来表示一个%

---------------------------------------------------------------------------------------------------------------------------------------------------------

About Python
之前忘记记录的函数input()用于I/O输入

Python内置的一种数据类型是列表:list(理解为一个特殊的顺序表,并内置各种操作函数),用大括号定义
如果要取最后一个元素,除了计算索引位置外,还可以用-1做索引,直接获取最后一个元素,同理可取倒数2,3,4个
classmates = [‘Michael’, ‘Bob’, ‘Tracy’]
classmates.append(‘Adam’)

classmates
[‘Michael’, ‘Bob’, ‘Tracy’, ‘Adam’]
演示append

classmates.insert(1, ‘Jack’)
classmates
[‘Michael’, ‘Jack’, ‘Bob’, ‘Tracy’, ‘Adam’]
演示insert

classmates.pop()
‘Adam’

classmates
[‘Michael’, ‘Jack’, ‘Bob’, ‘Tracy’]
演示pop,取出最后一个元素

classmates.pop(1)
‘Jack’
classmates
[‘Michael’, ‘Bob’, ‘Tracy’]
带参数的pop可以删除指定位置的元素

list内的元素数据类型可以不相同,很自由,可以将list的某一个元素定义为另外一个list

s = [‘python’, ‘java’, [‘asp’, ‘php’], ‘scheme’]
len(s)
4

另一种有序表叫元组 tuple,一旦初始化就不可修改,更安全,用小括号定义
只有1个元素的tuple定义时必须加一个逗号,来消除歧义
tuple的每个元素,指向永远不变

对于所有嵌套语句,都需要通过缩进来判断是否是嵌套内的一部分。
(貌似没有大括号这种存在,所以一定要按格式写代码,我挺喜欢这点的,可以写的更漂亮)
条件判断语句if
相比c语言,if后不需要加括号,但是要在判断语句(不管是if 还是else 还是elif)后加冒号:

循环语句
for in循环 记得有冒号
names = [‘Michael’, ‘Bob’, ‘Tracy’]
for name in names:
print(name)

while循环 同样有冒号
sum = 0
n = 99
while n > 0:
sum = sum + n
n = n - 2
print(sum)

测试python输出流格式
以下代码均测试通过,可以按要求输出如下内容
Hello,Bart

Hello,Lisa

Hello,Adam

1 、
L = [‘Bart’, ‘Lisa’, ‘Adam’]
for name in L:
print(‘Hello,%s’ %name)
2 、
L = [‘Bart’, ‘Lisa’, ‘Adam’]
for name in L:
print(‘Hello,’,name)

原文地址:https://www.cnblogs.com/hcw110/p/9718064.html