Python学习2之基本语法元素和数据类型

1.基本语法元素

1)一个缩进=四个空格
缩进是Python语言中表明程序框架的唯一手段
unexpected indent缩进错误
2)注释
#该代码已被注释,程序不会执行
windows
alt+3多行注释
alt+4解除多行注释
mac
选中多行按下ctrl+/
3)续行符 反斜杠\ 后面直接换行

2.变量

1)变量:在运行过程中可以被修改的量
2)常量:一旦赋值就不能改变值的标识符,Python无法定义常量
赋值语句——对变量进行赋值的一行代码
语法格式:
<变量>=<表达式>
表达式-产生或计算新数据值的代码片段

a,b=1,2
print(a,b)
#两种结果相同
a=1
b=2

3)标识符:有一串字符串组成可以是字母、数字、下划线、汉字,不能以数字开头,且不能与关键字【也被称为保留字】同名

3.print函数

可以输出单个/多个值
print(value,… …,sep=" “,end=”\n")表明输出换行
print(value,… …,sep=" “,end=” ")表明输出行尾以空格取代换行

#输出一个
print(15)
#输出多个,注意print自带换行
s="hello world"
print(s,12)

4.基本数据类型

1)数字类型

  • 整数
进制种类引导符号描述
二进制0b或0B由字符0和1组成0b1010
八进制0o 或0O由字符0到7组成0o1010
十进制默认情况1010
十六进制0x或0X由字符0~9,a~f,A~F组成,0x1010
  • 浮点数
    Python要求 浮点数必须带小数的数值(小数部分可以是0)

0.1+0.2
0.30000000000000004
print(a=0.1+0.2)报错
称为不确定尾数

  • 复数
    有一个基本单位元素j j=√(-1),含有虚数单位的数被称为复数
    Python中,复数被看为二元有序实数对(a,b) a+bj虚部通过j或J表示
    复数类型中实部和虚部都是浮点类型,对于复数z,可以用z.real z.imag分别获得实数部分和虚数部分
    如:
(3+4j).real
(3+4j).imag

2)数值运算操作符
x+y x+=y
x-y x-=y
x*y x+=y
x/y,结果为浮点数 x/=y
x//y,结果为整数
x%y x%=y
x**y,x的y次幂
-x,一个数的负数
+x,一个数本身
3)数值运算函数
abs(x)
print(abs(-22))
用于计算整数和浮点数x的绝对值
divmod(x,y)
用于计算x和y的除余结果,返回两个值,分别是x和y的整数除即x//y以及x与y的余数,即x%y
pow(x,y)
用于计算x的y次幂
pow(x,y,z)用来计算x^y %z,模运算与幂运算同时进行

pow(10,2)
#100
pow(2,5,3)
#2

round(x)
对整数或浮点数x进行四舍五入运算,采用奇进偶不进的方式
解释“奇进偶不进”

round(1.5)
#2
round(2.5)
#2

round(x,d) d:默认保留几位小数
max(x1,x2,…,xn)
取任意多个数字最大值,并输出
min(x1,x2,…,xn)
取任意多个数字最小值,并输出
4)字符串类型
字符串包括两种序列体系:正向递增和反向递减
s="python" #p-0 p--6
多行字符串利用三对双/单引号

s="""python
python
python"""
print(s)

5)索引和切片
字符串利用索引方式找到其中某个字符
索引格式:<字符串或字符串变量>[N]
Python中索引有两种访问方式:
从前往后的正向索引,n个字符串,索引值从0到n-1
从后往前的反向索引,n个字符串,索引值从-1到-n

s="python"
print(s[1])
print("python"[1])

python中,可以使用切片从字符串中提取子串,切片适用于字符串、列表表、元组、range对象等类型
切片格式:<字符串或字符串类型>[N:M:step]==[起始位置:终止位置:步长]
参数:N是切片的起始索引序号;M是切片的结束索引序号;左闭右开
正向标号和反向标号均可
step是切片的步长——步长为正是从左边向右边,步长为负是从右边向左边
6)转义字符
反斜杠()表示转义
换行\n 反斜杠\ 单引号’ 制表符\t

print("这是一个\n换行")
print("这是一个反斜杠\\")
print("将双引号\"输出")
print("这是一个制表\t符")

7)input和eval函数
input()输入函数
<变量> = input(<提示性文字>)
s = input("请输入一个名字:")
eval()函数
<变量> = eval(<字符串>)
去掉字符串最外侧的引号,并按照Python语句方式执行去掉引号后的字符内容

8)format基本使用

  • 模板字符串

模板字符串是一个由字符串和槽组成的字符串,用来控制字符串和变量的显示效果
字符串使用方式:<模板字符串>.format(<逗号分隔的参数>)

n = input("请输入个数字:")
name = input("请输入食物名称:")
s = "今天中午我吃了{}个{}".format(n,name)
print(s)
#
print("{0}那么大,{1}想去看看。".format("世界","我"))
  • 格式控制

format()的槽不仅包括参数序号还包括格式控制信息,语法格式为:
{<参数序号>:<格式控制标记>}

:<填充><对齐><宽度><,><精度><类型>
引导符号用于填充单个字符<左对齐 >右对齐 ^居中对齐槽的设定 输出宽度数字的千位分隔符适用于整数和浮点数浮点数小数部分的精度或字符串对打输出长度整数类型b,c,d,o,x,X 浮点数类型e,E,f%
s = "今天中午我吃了{:*<20}个鸡腿".format(3)
p = "今天中午我吃了{:X}个鸡腿".format(976)
n = "今天中午我吃了{:e}个鸡腿".format(3.1415926)
print(s)
print(p)
print(n)

9)字符串类型的操作
str1 + str2 连接两个字符串
str * n n *str 复制n次字符串
s in str 判断s字符串是否在str中
10)数字和字符串函数

  • 函数
    len() 返回字符串的长度

    chr() 返回Unicode编码对应的单字符
    ord() 返回单个字符对应的Unicode编码
    a-z 97-122

    bin() 返回整数x对应的二进制的小写形式
    oct() 返回整数x对应的八进制的小写形式
    hex() 返回整数x对应的十六进制的小写形式

    str() 将x转换为字符串
    int() 将x转换为整数
    float() 将x转换为浮点数

  • 字符串处理方法
    str.lower()
    str.upper()
    str.split(sep=None)
    str.count(sub) 返回sub字符串出现的次数
    str.replace(old,new) 返回字符串str的副本
    str.center(width,fillchar)
    str.strip(chars)
    从字符串str中去掉左和右侧chars中列出的字符【第一次,如果第一个不是则停止寻找】
    str.joins(iter) 将iter变量的每一个元素之间增加一个str字符串
    补充:
    str.capitalize() 将字符串的首字母大写
    str.title() 将字符串中每个单词的首字母大写,其余字母小写,非字母后的第一个字母将转换为大写字母

s = "北京,上海,天津,南京"
print(s.split(,))
s = "北京 上海 天津 南京"
print(s.split( ))
s = "abababcababc"
print(s.count("ab"))
s = "北京 上海 天津 南京 重庆 天津"
news = s.replace("天津","湖北")
print(news)
news = s.center(20,"*")
print(news)
s = "$$abcdefg$"
news = s.strip("$")
print(news)
s = " 红白黑绿"
news = "小".join(s)
print(news)

补充:
按位与&——两个对应位置上的数字都为1,运算结果该位置为1
2 010 4 100 2 & 4 = 000 --> 0
异或^ 对应位置上不同数得1,相同得0。
2 ^ 4 = 6
或|

5.练习

获取用户输入的一个(0-25)的数字,屏幕输出对应的小写字母。
如: 用户输入0 输出 a
a = eval(input(“请输入一个数字:”))
print(chr(a+97))

已知字符串s = “北京 上海 武汉 四川”,将字符串按照空格分隔,然后将所得的结果用号串联起来,输出最终结果字符串。
(最终屏幕输出 北京
上海武汉四川)
s = “北京 上海 武汉 四川”
string = s.replace(" “,”,")
print(string)

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值