一、变量
变量定义
注:查看变量类型->type(变量)
查看变量地址->id(变量)
变量命名规则
只允许出现:英文、中文、数字、下划线(不推荐用中文,不能以数字开头)
大小写敏感
不可使用关键字(如and)和内置函数
不能有空格和标点
关键字和内置函数
查看关键字——> help("keywords")
查看内置函数——>导入内置函数import XXXX ,dir (XXXX)
常量
一般用大写字母表示
常量是一确定就不轻易改变了的
二、数值类型
整数、浮点数和复数
(1) int整数(如a=3)
(2)float浮点数(必须包含一个小数点,如a=3.0)
有两种表示形式:
十进制形式:5.21、52.1
科学计数形式:5.21e2即5.21乘以10的平方
(3)complex复数
复数的虚部用j或J表示
进制之间的转换
int(x,d)将字符串x转换为对应的d进制的数为十进制的数
bin(x)将十进制数x转换为二进制
oct(x)十进制转换八进制
hex(x)十进制转十六进制
内置模块
(1)import math
import math
print(math.sin(0))
print(math.cos(0))
运行结果:
(2)import random
random.random()生成在【0,1】范围之间的一个实数
random.randint(a,b)生成【a,b】范围内的
import random
a = random.random()
print(a)
b = random.randint(4, 8)
print(b)
运行结果:
三、字符串
字符串的表示方法
可用单引号''或双引号""将字符串括起来。如a=" kkkkk"
若内容本身含有单引号或双引号:
用不同的引号括起来:有“单”用“双”,有“双”用“单”
使用三引号“““字符串”””
使用转义字符\
str1 = '作业写了吗?'
str2 = "没写"
str3 = '"巧了!我也是“'
str4 = "'玩会儿再写?'"
str5 = """'善哉'"""
str6 = "哈\"哈哈哈哈"
print(str1)
print(str2)
print(str3)
print(str4)
print(str5)
print(str6)
运行结果:
换行:\n
字符串的常用操作
(1)索引(从0开始)
格式:字符串名称[下标]
str1 = '作业写了吗?'
print(str1[2])
运行结果:
(2)字符串拼接,用+连接
(3)方法,调用格式:对象名.方法名
s.lower()将字符串s转换为小写。
s.upper()转为大写。
s.replace(old,new)返回一个新的字符串,将old替换为new。
s.find(p)查找字符串中是否存在p,若存在则返回p的索引位置,不存在则返回-1。
str1 = 'Do you like cats '
print(str1.lower())
print(str1.upper())
print(str1.replace('cats', 'dogs'))
print(str1.find("you"))
print(str1.find("me"))
运行结果:
(4)连接与切分
's'.join(str):以指定的字符s将字符串str连接生成一个新的字符串
str.split(s.[num]):通过指定分隔符对字符串str进行切分,num指定切分次数
(5)字符串的置逆
reversed()
字符串和数字之间的转换
str(a):将数字a转换为字符串
int(s):将字符串s转换为十进制数
四、IOP
printf
print()接收一个或多个字符串时,多个字符串用逗号分开
输出时遇到逗号,会以空格输出
print("Do", "you", "like", "cats?")
print("Do you like cats?")
运行结果:
输出格式:
(1)%方式
%d格式化一个整数
%f格式化一个浮点数
%s格式化一个字符串
(2)“{ }”.format(str):格式化字符串函数
{ }里可以指定方式:填充的字符、对齐方式和宽度等
指定填充的字符只能是一个字符,如果不指定,默认是空格
^<>分别是居中、左对齐、右对齐
如果是数字,还可以指定输出的进制
input
变量 =input(提示信息)
eval()
剥离去掉字符串外面的引号,并计算剩下的语句
五、编程规范
缩进
同一级别的代码块的缩进量必须相同。一般而言,以4个空格或一个Tab键为单位。
注释
单行注释:#
多行注释:用3个双引号或3个单引号
换行
若一行太长,可在行尾加上续航符\
必要的空格和空行
运算符两侧、逗号后建议增加一个空格。
六、综合实例-芳名和芳龄
nameF = input("请输入姓:")
nameL = input("请输入名:")
age = int(input("请输入年龄:"))
age = age - 10
name = nameF + nameL
print("十年前的年龄(十六进制)" + "%x" % age)
print("十年前的年龄(八进制)" + "%o" % age)
print("{:*^10}".format(name), "的国标码是:", name.encode("GBK"))
运行结果: