一、注释
1.单行注释#
#print('adda')
2.多行注释''' ''' """ """
'''
a = 0
b = 1
'''
#or
"""
a = 0
b = 1
"""
二.行与缩进
python最具特色的就是使用缩进来表示代码块,不需要使用大括号{}。
缩进的空格可变,但是同一代码块的缩进必须相同,不同层级缩进不同。
if true
print('True')
else
printf('False')
同一层级缩进不同,导致运行错误
print('adasd')
print(125)
三.标识符
1.与C语言一致
2.由下划线字母数字组成
3.开头必须是字母或者下划线,不能以数字开头
4.严格区分大小写,不能与关键字重名。
四.python变量
1.python的变量不需要声明变量类型。每个变量在使用前都必须赋值,变量赋值后该变量才能被创建。
2.变量名必须是一个标识符。
常用的命名方法如下
getNameAge (小驼峰)第一个首字母小写,其余首字母大写
get_name_age (匈牙利命名法)
GetNameAge (大驼峰命名法)首字母全大写
五.字符串
用'或"或'''或"""开始或结束
print('aa')
print("ad")
print('''ad''')
print("""ad""")
三引号内部可以包含单引号双引号
print(''' I'm a teacher! 我是"zhangsan"''')
三引号字符串又叫所见即所得字符串,每一次换行会转换成换行符'\n'
print('''咏鹅
鹅鹅鹅,
曲项向天歌;
白毛浮绿水,
红掌拨清波。''')
转义字符
反斜杠加特殊字符
#\'单引号
#\n换行
#\\代表一个反斜杠
#\"代表一个双引号
del 删除变量
a = 10
del a
print(a)#报错name 'a' is not defined
字符串的运算
包括+;*;in;not in
+拼接两个字符串,+两侧必须为字符串
eg
a = 'ads'
b = '123'
print(a+b)
abs123
进程已结束,退出代码为 0
字符串多次重复:* 运算, 用于生成重复的字符串
eg
print(3*'你好')
你好你好你好
in / not in 运算
s[start:end:步长]
-
作用
in 用于序列,字符串,字典中,用于判断某个值是否存在于序列中,如果存在就返回True, 否则返回False
not in 的返回值与 in 相反
-
s = '123' b = '1' c = '0' print(b in s) print(b not in s) #运行结果 True False 进程已结束,退出代码为 0
索引 index
-
语法
字符串[整数表达式]
-
作用
用来获取字符串其中的一个字符
-
说明
正向索引: 字符串的正向索引是从0开始的,.... 最后一个索引为 len(s)-1
反向索引: 字符串的反向索引是从 -1 开始的,-1 代表最后一个,... -len(s) 代表第一个
-
len(s)这个是求字符串长度的
-
eg
-
s = 'hello world' print(s[0]) print(s[len(s)-1]) #运行结果打印第一位与最后一位 h d
切片 slice
-
作用
从字符串序列中取出相应位置的元素,重新组成一个新的字符串
-
语法
说明
eg
-
开始索引starte是切片切下的开始位置
-
结束索引e 是切片的终止位置(但不包含终止点)
-
步长是切片取出数据后向后移动的方向和偏移量
-
没有步长,相当于步长为1(默认为1)
-
当步长为正数时,取正向切片
-
开始索引默认为0, 结束索引是最后一个元素的下一个索引
-
-
当步长为负数时,取反向切片
-
开始索引默认为-1, 结束索引是第一个元素的前一个索引
-
-
# 0 1 2 3 4
>>> s = 'ABCDE'
>>> s[1:] # 'BCDE'
>>> s[-2:] # 'DE'
>>> s[1:4] # 'BCD'
>>> s[:] # 'ABCDE'
>>> s[:2] # 'AB'
>>> s[1:1] # ''
>>> s[4:2] # ''
>>> s[::] # 等同于 s[::1] 'ABCDE'
>>> s[::2] # 'ACE'
>>> s[2::2] # 'CE'
>>> s[-1::-2] # 'ECA'
>>> s[::-1] # 'EDCBA'
>>> x='huaqyj'[0:2:2]
>>> print(x)
字符串的格式化表达式
占位符
三种占位方式,%,.format,f-string
#%占位法
name = 'zhang san'
age = 23
weight = 60.333325
print('my name is %s and i am %d years old and %4.3f kg' %(name,age,weight))#m.n控制宽度,精度
#format占位法
print('my name is {} and i am {} years old and {:.3f} kg' .format(name,age,weight))#:.f控制精度
PI = 3.141592653589793
print('圆周率是{:.4f}' .format(PI))
#f-string格式可直接插入表达式
print(f'my name is {name} and i am {age} years old and {weight :.3f} kg')#f+{}花括号里使用:.f控制精度
#运行结果
my name is zhang san and i am 23 years old and 60.333 kg
my name is zhang san and i am 23 years old and 60.333 kg
圆周率是3.1416
my name is zhang san and i am 23 years old and 60.333 kg
进程已结束,退出代码为 0
%m.nf:m是指总宽度,默认右对齐,加个 - 表示左对齐,n 是指保留的小数点位数
%m.ns:
-
%
:这是格式化操作符,用于引入格式化指令。 -
m
:这是一个数字,表示字段的最小宽度。在这个例子中,它指定字符串应该至少占据m
个字符的宽度。 -
n
:这是一个数字,表示从输入字符串中提取的字符数。如果输入字符串的长度小于n
,则输出整个字符串;如果大于或等于n
,则只输出前n
个字符。 -
s
:这是格式化类型,表示接下来的值应该被当作字符串处理。
当使用%m.ns
格式化字符串时,如果被插入的字符串长度小于n
,那么它将被右对齐,并在左侧填充空格以达到指定的宽度m
。如果被插入的字符串长度大于或等于n
,那么它将被截断到n
个字符,并且整个字段占据m
个字符的宽度。
如果不指定字段宽度m
,只指定.n
,则字符串不会在两侧填充空格,只会根据.n
指定的最大字符数进行截断。
eg
fmt = '''
甲方:__%s___
乙方:__%s__
金额:__%d__
'''
ht1 = fmt % ('li hua','zhang san',1000)
ht2 = fmt % ('li qing','zhang fei',1000)
print(ht1)
print(ht2)
number = 123.456789
formatted_number = "%10.2f" % number
print(formatted_number) # 输出: " 123.46"
#运行结果
甲方:__li hua___
乙方:__zhang san__
金额:__1000__
甲方:__li qing___
乙方:__zhang fei__
金额:__1000__
123.46
进程已结束,退出代码为 0
字符串的常用函数API
-
方法的调用语法
变量名.函数(参数)
eg
s = 'HELLO WORLD'
print(s.lower()) #小写转换
print(s.upper()) #大写转换
print(s.replace('WORLD','PYTHON')) #查找替换
#运行结果
hello world
HELLO WORLD
HELLO PYTHON
进程已结束,退出代码为 0
2.Python 运算符
a). 算术运算符
-
+
:加法 -
-
:减法 -
*
:乘法 -
/
:除法 -
%
:取模(取余数) -
**
:幂运算 -
//
:整除(向下取整数部分)
除法 / 总是返回一个浮点数
整除// 得到的并不一定是整数类型的数,它与分母分子的数据类型有关系。
不同类型的数混合运算时会将整数转换为浮点数:
print(10+20.3)#加法运算:30.3
print(17 / 3) # 整数除法返回浮点型:5.666666666666667
print(17 // 3) # 整数除法返回向下取整后的结果:5
print(17.0 // 3) # 整数除法返回向下取整后的结果:5.0
print(17 // 3.0) # 整数除法返回向下取整后的结果:5.0
print(17 % 3) # %操作符返回除法的余数:2
print(2**3) #幂运算2的3次方: 8