关于 门户网站 建设 请示,网站备案要邮寄资料吗,做宣传册从哪个网站找素材,浙江省建设安监站网站文章目录条件判断循环数据类型变量字符编码字符串格式化listtupledictset不可变对象”#“ 开头的是注释每一行是一个语句#xff0c;当语句以冒号 “:” 结尾时#xff0c;缩进的语句被视为代码块 好处#xff1a;强迫代码格式化#xff0c;强迫少用缩进 坏处#xff1a;“…
文章目录条件判断循环数据类型变量字符编码字符串格式化listtupledictset不可变对象”#“ 开头的是注释每一行是一个语句当语句以冒号 “:” 结尾时缩进的语句被视为代码块 好处强迫代码格式化强迫少用缩进 坏处“复制-粘贴”失效无法自动格式化 条件判断
if x:print(True)只要 x 是非零非空白字符串非空 list非 None 等空白或空值就判断为 True否则为 False
循环
for x in …把每个元素代入变量 xrange(x)可以生成一个整数序列从 0 开始遇 x 停止list(range(x))可以得到[0,1,2,3,…x-1]while n0满足 n0 就不断循环break提前结束当前整个循环continue跳出当前这次循环
数据类型
类型精度大小说明整型精确无大小限制十六进制以 0x 为前缀由 0-9a-f 表示允许数字中间以 ‘_’ 分隔入 10_000_000(同 10000000)0xa1b2_c3d4(同 0xa1b2c3d4)浮点型四舍五入无大小限制inf(无限大)科学计数法把 10 用 e 替代1.23e9字符串--r’’ 表示’‘内部的字符串默认不转义’‘’…‘’’ 的格式表示多行内容布尔--可以用 and, or, not 运算空值--None
整数除法
运算符说明/结果是精确的商永远是浮点数//结果是商的整数部分永远是整数%结果是余数部分永远是整数
变量
必须是大小写英文数字和 ‘_’ 组合并且不以数字开头
可以把任意数据类型赋值给变量同一个变量可以反复赋值而且可以是不同类型的变量变量在计算机内存中的表示如下
a ABCPython 解释器干了两件事情
在内存中创建了一个’ABC’的字符串在内存中创建了一个名为 a 的变量并把它指向’ABC’。
变量本身类型不变的计算机编程语言为动态语言
常量
常量就是不能变的变量Python 通常用全部大写的变量名表示常量Python 不强制常量无法修改
字符编码
8 比特(bit)为一个字节(byte)最大表示 28-1 255ASCII 码有 127 个字符Unicode 把所有语言都统一到一套编码里UTF-8 把 Unicode 字符根据不同的数字大小编码成 1-6 个字节常用英文字符编码成 1 个字节汉字通常是 3 个字节很生僻字才编码成 4-6 字节ASCII 可以看作 UTF-8 的一部分计算机内存统一使用 Unicode当需要保存到磁盘或传输时转为通用 UTF-8s
字符串
ord() 可以获取字符的整数表示chr() 把编码转成对应的字符len() 参数是 str 时表示字符数参数是 list 时表示元素个数参数是 bytes 时表示字节数
编码与解码
encode() 将 str 编码成指定的 bytes ABC.encode(ascii)
bABC中文.encode(utf-8)
b\xe4\xb8\xad\xe6\x96\x87decode() 将指定 bytes 解码为 str
# errorsignore 忽略错误的字节b\xe4\xb8\xad\xff.decode(utf-8, errorsignore)
中格式化
占位符
占位符替换内容说明%d整数用空位或 0 补长%2d-%02d % (3, 1) 3-01%f浮点数保留小数位数%.2f % 3.1415926 3.14%s字符串%x十六进制整数
format() 用传入的参数依次替换字符串内的占位符 {0}, {1}... Hello, {0}, 成绩提升了 {1:.1f}%.format(小明, 17.125)
Hello, 小明, 成绩提升了 17.1%f-string 字符串包含 {xxx}就会以 xxx 变量来替换 r 2.5s 3.14 * r ** 2print(fThe area of a circle with radius {r} is {s:.2f})
The area of a circle with radius 2.5 is 19.62list
一种有序的集合可以随时添加或删除其中的元素元素的类型可以不同
方法说明[]索引listA[0]获取第一个元素listA[-1]获取最后一个元素listA[1] ‘C’把第二个元素替换为 ‘C’append追加listA.append(‘A’)在末尾最佳一个 ‘A’insertlistA.insert(1, ‘B’)在第一个元素后面插入一个 ‘B’poplistA.pop()删除末尾pop(1)删除第二个元素
赋值语句不能与这些方法同用 listB listA.append(A)print(listB)
Nonetuple
另一种有序集合一旦初始化不能修改指向不变变量所指向的实例不能修改
定义空元组t ()定义单元素元组t (1,)要保证元组内容不可变必须保证元组的每个元素本身不可变
dict
python 内置字典在其他语言也叫 map使用键-值存储具有极快的查找速度不会随着大小的变化而变慢相比 list 占用大量内存以空间换时间
方法说明inT in d 判断’T’是否存在于 d.keysgetd.get(T) 获取 key 为 ‘T’ 的值 d.get(T, -1) 获取 key 为 ‘T’ 的值如不存在取默认值 -1popd.pop(B) 删除 key 为’B’ 的键值对
dict 的 key 必须是不可变对象如字符串整数等否则抛异常TypeError: unhashable type
set
与 dict 类似也是一组 key 的集合但不存储 valuekey 不能重复数学意义上的无序和无重复元素的集合
创建 s set([1,2,2,3,3])s
{1, 2, 3}添加 s.add(4)s
{1, 2, 3, 4}删除 s.remove(4)s
{1, 2, 3}并交 ss set([2,3,4])sss
{2, 3}s|ss
{1, 2, 3, 4}不可变对象 a abcb a.replace(a, A)b
Abca
abctuple 也是不可变对象
(1, 2, 3) 可以作为 dict 和 set 的 key(1, 2, [1, 2]) 不可作为 dcit 和 set 的 keyTypeError: unhashable type 专栏《Python 基础》
PS感谢每一位志同道合者的阅读欢迎关注、评论、赞