python入门语法

python语法入门

1、与用户交互

输入(input())

python3

input()会将输入的内容全部转换成字符串类型

>>> input('输入你的名字')
输入你的名字shen#直接输入
'shen'#输出均为字符串类型

python2

python2中input要声明具体的数据类型,输入什么类型输出什么类型,或者用raw_input()和python3的input相同

input(">>:")
>>:sean#未知指明变量类型
    	Traceback (most recent call last):
        File "<stdin>", line 1, in <module>
        File "<string>", line 1, in <module>
        NameError: name 'sean' is not defined
input(">>:")
>>:"sean"#输入字符串类型
    'sean'#输出字符串类型
input(">>:")
>>:1#输入数字类型
    1#输出数字类型
input(">>:")
>>:[1,2]#输入列表类型
    [1, 2]#输出列表类型
    -------------------------------------------
raw_input(">>:")
>>:sean#直接输入不用声明变量类型
    'sean'#输出都是字符串类型
raw_input(">>:")
>>:12
    '12'
       

输出(print())

  • 输出一个值和多个值(输出多个值用逗号分开,逗号后加一个空格规范)
print("a")#单个输出
print("a", "b", "c")#一次性输出多个值,用逗号分开,逗号后加空格规范
  • 默认print有一个end='\n'功能,是打印换行的意思,可以修改成其他的,择不换行换成其他的符号连接

换行符"\n",在同一位置循环"\r"

# print("输入",end='\n')#默认end="\n",换行符的意思
print("输入名字:",end='')#用空格代替\n用空格连接后面一条打印的打印不换行
print("您的名字:",end='#')#用#代替\n用#连接后面一条打印的不换行
print('aaa',end="\r")#用\r代替\n在后面一条打印同一位置循环覆盖
>>>输入名字: 您的名字:#aaa
print("名字:",'12234')
>>>名字:12234
print("领导名字:",'14')

2、格式化输出

1、%s和%d

%s可以接收任意字符,%d只能接收数字类型并且输出转换成整型

name = input("输入名字:")
age = input("输入年龄:")
#age = int(age)#%d只能接收数字类型,故需要转换成数字类型
age = eval(age)#%d只能接收数字类型,故需要转换成数字类型
print("my name is %s" % name)
print("my name is %s , my age is %d" % (name, age))
print("my name is %s , my age is %s" % (name, age))

2、.format()

三种玩法

  1. “{}”.format(xxx,yyy)#按照顺序往花括号里放值
  2. "{1}".format(xxx,yyy,zzz)#按照索引往花括号里放值
  3. "{name}".format(name=xxx)#指定放值
name = "shen"
age = 18
hobby = "study"
#按顺序往{}里放值
print("我的名字是{}我的年龄{}".format(name, age, hobby))
#按索引放值
print("我的名字是{0}我的年龄{2}".format(name, hobby, age))
#按指定放值
print("我的名字是{mz}我的年龄{nn}".format(mz=name, nn=age))

3、f-string (python3.6版本之后才有的功能)

f"{xxx}"

name = "shen"
age = 18
habby = "study"
print(f"我的名字是{name},我的年龄是:{age}我的爱好是{hobby}")

3、基本数据类型

1、数字类型(不加引号)

整型 int

定义:手机号,身份证号,年龄等整数

a=123#a = int(123)
b="78"#字符串
c=int(b)#将b转换为整型
  • python2中有长整型long,在[-24xxxxxxxx,24xxxxxxxx]范围内为整型,超过这个范围是长整型(10位数)
  • python3中无长整型

浮点型 float

定义:带有小数的,如身高,体重等

a=12.5#a = float(12.5)
b="12.5"#字符串
c=float(b)#将b转换成浮点型
d=int(c)#将浮点型转换成整型去除小数部分,不会四舍五入(浮点型字符串转换成整型必须先转换成浮点型,再转换成整型)

2、字符串类型 str (加引号的都是字符串类型)

定义:存一些描述性信息,个人信息,姓名等

用单引号,双引号,三引号,引号没有区别,但不能混用

字符串内还有字符串就要不同的引号嵌套

name = “shen” # name = str(”shen“)

python2中str本质是8个bit位序列

python3中str本质是unicode序列

1024G=1T

1024M=1G

1024KB=1M

1024B=1KB

8bit=1b

字符串的拼接是开辟一个新的内存空间,然后将值存进去

3、列表类型 list

定义:存放一个或者多个不同类型的值

s = [1,2"shen",[2,"name"]]

索引

s = [1,2"shen",[2,"name"]]

print(s[0])>>>1

print(s[2])>>>shen

print(s[3][1])>>>name

4、字典类型 dict

定义:通过大括号来存数据,通过key:value这种映射关系来定义键值对,每个键值对通过逗号分隔

d = {"name":"shen", "age":18}

索引

d = {"name": "shen", "age": 18, "hobby": ['study', 'play', '读书']}
print(d["name"])>>>shen
print(d["hobby"][2])>>>读书

5、布尔类型 bool

定义:判断事物的对错

一般布尔类型不单独使用

is比较的是id,==比较的是值

4、运算符

1、算术运算

+、—、*、/、//(取整)、%(取余)、**(幂次方)

2、赋值运算

增量赋值

=、+=、-=、*=、/=、//=、%=、**=

链式赋值

x=y=z=1

交叉赋值

n = 1

m =2

n,m = m,n

》》n=2,m=1

解压赋值

l1 = [1,2,3,4]

a,b,c,d = l1
print(a,b,c,d)
>>>1,2,3,4
a,b ,*_ = l1
print(a,b)
>>>1,2
*_,a,b = l1
print(a,b)
>>>3,4

3、比较运算

print(a == b)  # 判断运算符左右两边的值是否相等
print(a != b)  # 判断运算符左右两边的值是否不相等
print(a > b)
print(a >= b)
print(a < b)
print(a <= b)

4、逻辑运算

and 、 or 、 not

与 、 或 、 非

a = 1
b = 2
c = 3
print(a > b and b > c)
print(a < b and b < c)# and连接两个全部为真才为真
print(a > b or b < c) # or连接两个有一个为真就为真
print(not a>b)
print(a<b and a>c or b<c)
print(a>b or b<c and a>c)#顺序判断真假
v1 = 1 or 3
print(v1)
v2 = 1 and 3
print(v2)
v3 = 0 and 2 and 1
print(v3)
v4 = 0 and 2 or 1
print(v4)
v5 = 0 and 2 or 1 or 4
print(v5)
v6 = 0 or False and 1
print(v6)
#两边都不是0的情况下and 直接取后面的值 or 直接取前面的值
#如果存在0的情况and 直接取0 or 直接取非0
#正常开发中混用and,or用括号区分优先级,增强程序可读性
posted @ 2019-11-02 19:51  Mr沈  阅读(261)  评论(0编辑  收藏  举报