输入和输出转义字符数据类型
布尔值空值列表元组类型转换 变量和常量
1. 变量2. 常量 运算符字符占位符
1. %2. format()3. f-string 条件判断循环
1. for...in
`break``continue` 2. while
输入和输出输出
print('Hello World')
输入
input()
eg:
name = input('请输入您的姓名:') print('姓名:', name)
运行结果:
r" " 表示""内部的字符串默认不转义
print(r'这里面的内容nrt不会被转义')
''' ''' 表示换行
print('''第一行 第二行 第三行''')数据类型 布尔值
大写 True、False 表示布尔值
布尔值可以用 and 、or 和 not 运算,分别表示 且、或、非
>>> 3 > 2 True >>> 3 > 5 False >>> not 1 > 2 True空值
None
列表list 是一种有序的集合,可以随时添加和删除其中的元素。类似于 JS 的 数组,可以用索引。Python 支持负数索引, -1 索引可以定位到列表的最后一个元素,-2 索引可以定位到列表的倒数第2个元素,依次类推。
append(元素) 追加元素到末尾
insert(索引, 元素) 把元素插入到指定的位置
pop() 删除末尾元素
pop(索引) 删除指定位置的元素
name = ['a', 'b', 'c'] print(name)元组
tuple 和 list 非常类似,但是 tuple 一旦初始化就不能再改变。
tuple 每个元素的指向永远不能被改变;
若 tuple 的 1个元素指向 list,list 本身是可变的。
“可变的” tuple:
>>> t = ('a', 'b', ['A', 'B']) >>> t[2][0] = 'X' >>> t[2][1] = 'Y' >>> t ('a', 'b', ['X', 'Y'])
意义:因为 tuple 不可变,所以代码更安全。如果可能,能用 tuple 代替 list 就尽量用 tuple。
name = ('a', 'b', 'c') print(name)
注意:要定义一个只有1个元素的 tuple 时必须加一个逗号,以免误认为()表示数学公式中的小括号这种歧义。
错误:
>>> t = (1) >>> t 1
正确:
>>> t = (1,) >>> t (1,)类型转换
int(字符串) 可以转换 str 为 int
变量和常量 1. 变量Python 是动态语言,Java 是静态语言
动态语言:变量本身类型不固定的语言。
静态语言:在定义变量时必须指定变量类型,如果赋值的时候类型不匹配,就会报错的语言。
动态语言:
a = 123 # 变量a print(a)
静态语言:
int a = 123; // 变量a2. 常量
常量就是不能变的变量,Python 中通常用全部大写的变量名表示常量。
PI = 3.14159265359运算符
/ 除法计算结果是浮点数,即使是两个整数恰好整除,结果也是浮点数:
>>> 9 / 3 3.0
// 为地板除,两个整数的除法仍然是整数:
>>> 10 // 3 3
% 取余:
>>> 10 % 3 1字符
Python 3 的字符串使用 Unicode,直接支持多语言。种方式纯属自找麻烦,如果没有特殊业务要求,请牢记仅使用 UTF-8 编码。
以 Unicode 表示的 str 通过 encode() 方法可以编码为指定的 bytes
要把 bytes 变为 str,就需要用 decode() 方法
要计算 str 包含多少个字符,可以用 len() 函数
当Python解释器读取源代码时,为了让它按UTF-8编码读取,我们通常在文件开头写上这两行:
#!/usr/bin/env python3 # -*- coding: utf-8 -*-
占位符 1. %第一行注释是为了告诉 Linux/OS X 系统,这是一个 Python 可执行程序,Windows 系统会忽略这个注释;
第二行注释是为了告诉 Python 解释器,按照 UTF-8 编码读取源代码,否则,你在源代码中写的中文输出可能会有乱码。
在字符串内部,%s 表示用字符串替换,%d 表示用整数替换,%f 表示用浮点数替换,%x 表示用十六进制整数替换。
有几个 %?占位符,后面就跟几个变量或者值,顺序要对应好;
如果只有一个 %?,括号可以省略;
如果不太确定应该用什么,%s 永远起作用,它会把任何数据类型转换为字符串;
如果字符串里面的 % 是一个普通字符,就需要用 %% 来表示一个 %。
>>> 'Hi, %s, you have $%d.' % ('Michael', 1000000) 'Hi, Michael, you have $1000000.'2. format()
写法比 % 麻烦
>>> 'Hello, {0}, 成绩提升了 {1:.1f}%'.format('小明', 17.125) 'Hello, 小明, 成绩提升了 17.1%'3. f-string
使用以 f 开头的字符串,称之为 f-string,它和普通字符串不同之处在于,字符串如果包含 {xxx},就会以对应的变量替换:
>>> r = 2.5 >>> s = 3.14 * r ** 2 >>> print(f'The area of a circle with radius {r} is {s:.2f}') The area of a circle with radius 2.5 is 19.62条件判断
elif 是 else if 的缩写
age = 20 if age >= 6: print('teenager') elif age >= 18: print('adult') else: print('kid')
if 简写:
if x: print('True')循环 1. for…in
把 list 或 tuple 中的每个元素迭代出来
sum = 0 for x in [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]: sum = sum + x print(sum)break
退出循环
n = 1 while n <= 100: if n > 10: # 当n = 11时,条件满足,执行break语句 break # break语句会结束当前循环 print(n) n = n + 1 print('END')continue
跳过当前的这次循环
n = 0 while n < 10: n = n + 1 if n % 2 == 0: # 如果n是偶数,执行continue语句 continue # continue语句会直接继续下一轮循环,后续的print()语句不会执行 print(n)
2. whilebreak 和 continue 通常都必须配合 if 语句使用;
break 和 continue 会造成代码执行逻辑分叉过多,容易出错,建议少用。
sum = 0 n = 99 while n > 0: sum = sum + n n = n - 2 print(sum)
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)