python基础学习叁,自学的光景

By admin in 4858.com on 2019年4月13日

一.字符格式化输出

一.编码难题

一,数据类型

Python 自学的生活–One day笔记- 字符串拼接 + if while for循环,python–one

注释
单行注释 #
多行注释 ”’ 八个单引号或然四个双引号 “””

”’ 用三引号引住能够多行赋值

用户交互 input

字符串拼接
+  “”%() “”.format()推荐应用
name = input(“name:”)
age = int(input(“age:”))
sex = input(“sex:”)
例:+
# 字符串拼接+
info1 = ”’—-info in ”’ + name + ”’—
name:”’ + name + ”’
age:”’ + age + ”’
sex:”’ + sex + ”’
”’
例:””%()
# %格式化字符串
info = ”’——info in %s ——-
name:%s
age:%d
sex:%s
”’ % (“name”, “name”, age, “sex”)

#””.format()
info3 = ”’—info in {_name}—
name:{_name}
age:{_python基础学习叁,自学的光景。age}
sex:{_sex}
”’.format(_name=name,
           _age=age,
           _sex=sex)
info4 = ”’—info in {0}—
name:{0}
age:{1}
sex:{2}”’.format(name, age, sex)

模块定义:
密文密码:getpass  引用后采用,getpass.getpass()
if else 使用
例:
username = “username”
password = “123456”
_Username = input(“Username:”)
_Passwd = input(“Password:”)
if username == _Username and password == _Passwd:
    print(“welcome user {name} to beij”.format(name=username))
else:
    print(“Invalid  username or passwd”)

if elif else
例:
Myage = 37
InputAge = int(input(“please input my age:”))
if InputAge == Myage:
    print(“It’s right”)
elif InputAge > Myage:
    print(“Think small”)
else:
    print(“Think big”)

While else 循环
count = 0
while count < 3:
    Myage = 37
    InputAge = int(input(“please input my age:”))
    if InputAge == Myage:
        print(“It’s right”)
        break
    elif InputAge > Myage:
        print(“Think small”)
    else:
        print(“Think big”)
    count+=1
else:
    print(“fuck you!”)

break    跳出当前全方位循环
continue 跳出当前巡回,进入下次巡回

 

作业

编排登陆接口

  • 输入用户名密码
  • 证实成功后显得欢迎消息
  • 输错三次后锁定

old_uname = open(r'C:\Users\Administrator\Desktop\username.txt', 'r').readlines()
count = 0
while count < 3:
    username = input("please your username:")
    passwd = input("please your passwd:")
    for i in old_uname:
        if i == username:
            print("wolcome to your blogs:{_uname}".format(_uneme=username))
            break
        else:
            continue
    else:
        count += 1
        if count == 3:
            continue
        print("The password you entered is incorrect!please input again...")
else:
    print("三次错误,账号已锁定")
    open(r'C:\Users\Administrator\Desktop\lockname.txt', 'a').write(username + '\n')


字符串基础
(1)、转义字符串             
(2)、raw字符串--转义机制  open(r'c:\tmp\a.txt','a+')
(3)、Unicode字符串
(4)、格式化字符串  "age %d,sex %s,record %m.nf"%(20,"man",73.45)
字符串基础操作
 + 连接 、* 重复、s[i] 索引(index)、s[i:j] 切片(slice)、for循环遍历

自学的日子–One day笔记- 字符串拼接 + if
while for循环,python–one 注释 单行注释 # 多行注释 ”’
三个单引号或然四个双引号 “”” ”’ 用3引…

占位符 %s s = string 字符串
           %d d = digit 整数
           %f f = float 浮点数

暗中同意境况下,Python
3源码文件以 UTF-八 编码,全体字符串都是 unicode 字符串。
也足以为源码文件钦点分歧的编码,在文件底部加上:

1.平头品类:int

name = input("Name:")
age = int(input("Age:"))
job = input("Job:")
salary = input("Salary:")
age=int(age)
salary = int(salary)
msg = '''
Name: %s
Age : %d
Job : %s
Salary: %f
''' % (name , age , job ,salary )
print(msg)

 # coding=gbk 

在三10个人机器上,整数的位数为31个人,取值范围为-贰**4858.com,31~2**31-1,即-2147483648~2147483647

  ”’ ……”’不仅能够象征注释多行,也得以象征打字与印刷多行。

 

在陆十六人系统上,整数的位数为六拾个人,取值范围为-二**63~2**63-1,即-9223372036854775808~9223372036854775807

二.str.isdigit()方法

2.关键字

在Python中,能够对整数执行加(+)减(-)乘(*)除(/)的运算

自小编批评字符串是还是不是只由数字组合

保留字即重点字,Python的标准库提供了几个keyword
module,能够出口当前版本的有所主要字:

a = 2
b = 3
print(a+b)
print(a*b)
print(a-b)
print(a/b)

三.for循环

>>> import keyword
>>> keyword.kwlist

['False', 'None', 'True', 'and', 'as', 'assert', 'break', 'class', 'continue', 'def', 'del', 'elif', 'else', 'except', 'finally', 'for', 'from', 'global', 'if', 'import', 'in', 'is', 'lambda', 'nonlocal', 'not', 'or', 'pass', 'raise', 'return', 'try', 'while', 'with', 'yield']

2.字符串:str

简单的for循环,输出从0到9。

 

在Python中,加了引号的字符都被认为是字符串!

for i in range(10):
    print( i )

3.注释

4858.com 1

for循环能够钦命范围,输出从壹到九,包含首项不包罗末尾。

Python中单行注释以#起来,多行注释用四个单引号(”’)可能多个双引号(”””)将注释括起来。

name = 'wang'
name1 = "shuai"
name2 = '''我最帅,呵呵! '''


print(name)
print(name1)
print(name2)

name = 'wang'
name1 = "shuai"
name2 = '''我最帅,呵呵! '''


print(name)
print(name1)
print(name2)
for i in range(1,10):
    print( i )

 

 

for循环也有for…else…的构造

4.变量

”’ ”’的用处,多行字符串用‘’‘ ‘’’

for i in range(3):
    print( i )
else:
    print("This is else statement")

Python中的变量不须求注脚。每一种变量在使用前都必须赋值,变量赋值现在该变量才会被成立

msg = '''
今天我想写首小诗,
歌颂我的同桌,
你看他那乌黑的短发,
好像一只炸毛鸡。
'''
print(msg)

万一使用break同样整体跳出不执行else语句。

 

字符串的拼接

四.列表list

Python
3支持int、float、bool、complex(复数)。

字符串可以相加也足以相乘。

list1=[9,3,5,4,6,1]

#按索引取值
print(list1[2])#结果为5

#切片list[start:end:step]
print(list1[0:5])#结果为[9,3,5,4,6]包括起始项不包括尾项
print(list1[0:])#结果为[9,3,5,4,6,1]从起始值取到最后
print(list1[0:-1])#结果为[9,3,5,4,6]从起始值取到倒数第二值,-1表示最后一个的索引
print(list1[0::2])#结果为[9,5,6]步长为2,隔一个取一个
print(list1[3::-1])#结果为[4,5,3,9]步长为-1,步长同时表示方向
print(list1[3:-1:-1])#结果为[]终止点不随步长方向改变
print(list1[-1:1:-1])#结果为[1,6,4,5]

#添加
list1.append(7)#表示将7添加到最后一位[9,3,5,4,6,1,7]
list1.insert(2,8)#表示将8插入到索引为2的地方[9,3,8,5,4,6,1,7]

#修改
list1[0]=2 #[2,3,8,5,4,6,1,7]
list1[1:3]=[8,3]#[2,8,3,5,4,6,1,7]

#删除
print(list1.pop())#删除最后一个值,pop函数有返回值,输出的为所删除的值[2,8,3,5,4,6,1]
print(list1.pop(2))#删除索引为2的值[2,8,5,4,6,1],输出3
list1.remove(5)#移除列表中的第一个5,[2,8,4,6,1]

#输出列表元素个数
print(len(list1))#输出为5

#计算某元素出现的个数
list2=[1,1,1,2,3,4,1]
print(list2.count(1))#输出为4

#扩展列表
 a = [1, 2, 3]
 b = [4, 5, 6]
 a.extend(b)
 print(a)#输出[1,2,3,4,5,6]
 print(b)#输出[4,5,6]
 print(a+b)#列表可以相加,输出为[1,2,3,4,5,6,4,5,6],但不会改变a和b的值

#从列表中找出某个值的第一个匹配值的索引index(object,start,stop)
c=[1,1,1,2,3,4]
print(c.index(1,1,3))#输出为1

#列表排序
list1.sort()#默认reverse=False
print(list1)#[1,2,4,6,8]
sorted(list1)#也可以将list1排序,但不会改变list1,而是生成一个新的列表
#如果是字符串列表,则按其首字母的ASCII码的顺序排列

#列表反向排序
list1.reverse()
print(list1)#输出为[8,6,4,2,1]

#成员运算in和not in
if 4 in list1:
    print("yes",end=" ")
if 3 not in list1:
    print("no")#输出结果为yes no

#判断列表是否为空

list3=[]

if list3 :
    print('不为空')
else :
    print('列表为空')#输出结果为列表为空

数值运算:

name = 'wang'
age = '25'
print(name + age)
print(name * 10)

  

  • Python能够同时为多少个变量赋值,如a,
    b = 1, 贰。
  • 三个变量能够通过赋值指向不一样品种的目的。
  • 数值的除法(/)总是回到叁个浮点数,要获取整数使用//操作符。
  • 在混合总计时,Python会把整型转换来为浮点数。

字符串的拼凑只好双方或多方都以字符串不可能与数字或其余项目拼接!!!

 

 

3.布尔值:Ture,False

 

字符串:

布尔类型非常粗略,就八个值 ,一个True(真),五个False(假), 主要用记逻辑判断

python中的字符串str用单引号(‘
‘)或双引号(” “)括起来,同时选用反斜杠(\)转义特殊字符

a = 1
b = 2
print(a>b)
print(b>a)

字符串能够采取 +
运算符串连接在一块,也许用 * 运算符重复

 

1 text = 'ice'+' cream'
2 print(text)
3 
4 text = 'ice cream '*3
5 print(text)

二,格式化输出

 

name = input('Name:')
age = input('Age:')
job = input('Job:')
hobbie = input('Hobbie:')
abc ='''
------------ info of %s -----------
Name  : %s
Age   : %s
Job   : %s
Hobbie: %s
------------- end -----------------
'''%(name,name,age,job,hobbie)
print(abc)

利用3引号(”’…”’或”””…”””)能够钦赐二个多行字符串

%s就是代表字符串占位符,除了那几个之外,还有%d,是数字占位符,
假设把上边的age前面包车型地铁换到%d,就表示你不可能不只好输入数字啦

1 text = '''啦啦啦
2 喔呵呵呵呵
3 呵呵你妹'''
4 print(text)
5 text = 'ice\
6         cream'
7 print(text)
name = input('Name:')
age = int(input('Age:'))
job = input('Job:')
hobbie = input('Hobbie:')
abc ='''
------------ info of %s -----------
Name  : %s
Age   : %d   #这里不一样,只能输入数字
Job   : %s
Hobbie: %s
------------- end -----------------
'''%(name,name,age,job,hobbie)
print(abc)

 

3,基本运算符

设若不想让反斜杠产生转义,能够在字符串前边添加几个r 或 Sportage,表示原始字符串。

一.算数运算

如 r”this is a line with
\n” 则\n会呈现,并不是换行

a = 2                   
b = 4
print(a+b) 

print(a-b)

print(a*b)

print(a/b)

print(a%b)

print(a**b)

print(b//a)
1 text1 = r'E:\notice'
2 text2 = "let's go!"
3 text3 = r'this is a line with \n'
4 print(text1)  # E:\notice
5 print(text2)  # let's go!
6 print(text3)  # this is a line with \n

二.比较运算

 

a = 1
b = 2
print(a > b)
print(b > a)
print(a == b)
print (a != b)
print(a >= b)
print(a <= b)

字符串有二种索引情势,第三种是从左往右,从0初阶挨家挨户增添;第1种是从右往左,从-1早先逐项减弱。

叁.逻辑运算

python中平昔不独自的字符类型,三个字符就是长度为壹的字符串

and:布尔‘与’。假诺a为False,a and b 再次来到False,不然它重临b的计算值。

1 text = 'ice cream'
2 print(len(text))
3 
4 print(text[0])  # i
5 print(text[-9])  # i
6 
7 print(text[8])  # m
8 print(text[-1])  # m

not:布尔‘非’。如果a为True,返回False。如果a为False,它返回Ture。

 

or:布尔‘或’。假若a是True,他归来Ture,否则它重返b的总计值。

python字符串无法被改动。向一个索引地方赋值会招致错误

  在未曾()的情况下not 优先级高于 and,and优先级高于or,即优先级关系为(
)>not>and>or,同一优先级从左往右总结。

1 text = 'ice cream'
2 text[0] = 't'  # 报错
3 print(text)
1,3>4 or 4<3 and 1==1
2,1 < 2 and 3 < 4 or 1>2 
3,2 > 1 and 3 < 4 or 4 > 5 and 2 < 1
4,1 > 2 and 3 < 4 or 4 > 5 and 2 > 1 or 9 < 8
5,1 > 1 and 3 < 4 or 4 > 5 and 2 > 1 and 9 > 8 or 7 < 6
6,not 2 > 1 and 3 < 4 or 4 > 5 and 2 > 1 and 9 > 8 or 7 < 6

 

四,流程序控制制语句: if

还能对字符串举办切开,获取壹段子串。用冒号分隔三个目录,情势为变量[头下标:尾下标]。

if ….else语句

截取的限制是前闭后开的,并且多个目录都足以省略:

单分支

1 text = 'ice cream'
2 print(text[:3])  # ice
3 print(text[4:9])  # cream
4 print(text[4:])  # cream
if 条件
   满足条件执行的代码

age = 29
if age == 29:  
   print('你好帅') 

 

双分支

五.叁目运算符

age = 29
if age == 30:
  print('你好帅')
else:
  print('你很衰')
1 x = 100
2 y = 200
3 z = x if x > y else y
4 print(z)  # 200

多分支

 

age = 29
guess = int(input('age:'))
if guess < age:
   print('我有那么年轻吗?')
elif guess > age :
    print('你说的是你自己的岁数吧!')
else:
    print('你很帅,猜对了')

6.分支

 

if-else
语句与别的语言类似,不再赘言

五,流程序控制制语句: while

if-elif-else
语句,也便是c或java语言中的if-else if-else :

while 条件:
    循环体
    如果条件为真,那么循环体执行
    如果条件为假,那么循环体不执行

count = 0

while count < 100:
    print(count)
    count += 1
 1 while True:
 2     score = int(input("Please input your score : "))
 3     if 90 <= score <= 100:
 4         print('A')
 5     elif score >= 80:
 6         print('B')
 7     elif score >= 70:
 8         print('C')
 9     elif score >= 60:
10         print('D')
11     else:
12         print('Your score is too low')

break 跳出循环

 

count = 0

while count < 100:
    print(count)
    if count == 10:
        break
    count += 1

7.循环

continue 跳过本次巡回

while循环语句一般方式:

count = -1

while count < 20:
    count += 1
    if count == 10:
        continue
    print(count)

while 评定尺度:

 

   statements

while…..else

 1 import random
 2 
 3 print("hello world!\n")
 4 number = random.randint(1, 10)
 5 temp = input("Please input a number : ")
 6 i = int(temp)
 7 
 8 while i != number:
 9     print("wrong...")
10     if i < number:
11         print("required a bigger number")
12     else:
13         print("required a smaller number")
14     temp = input("Please input a number : ")
15     i = int(temp)
16 
17 print("yes...")

while 前边的else 功用是指,当while 循环平常执行完,中间未有被break
中止的话,就会执行else前边的言语

 

count = -1

while count < 20:
    count += 1
    print(count)
else:
    print('0-20输出完毕')

for循环的形似格式如下:

本条是有break打断后就不出口的例证

for
<variable> in <sequence>:

count = -1

while count < 20:
    count += 1
    print(count)
    if count == 10:
        break
else:
    print('0-20输出完毕')

  <statements>

 

else:

  <statements>

1 languaegs = ['C','c++','java','python']
2 for language in languaegs:
3     print(language, len(language))

 

循环语句能够有else子句

它在穷尽列表(以for循环)或标准成为假(以while循环)循环终止时被实施

但循环被break终止时不执行.如下查寻质数的循环例子

1 for num in range(2, 10):
2     for x in range(2, num):
3         if num%x == 0:
4             print(num, 'equals', x, '*', num//x)
5             break
6     else:
7         # 循环中没有找到元素
8         print(num, 'is a prime number')

 

要是急需遍历数字体系,能够选用内置range()函数:

 1 # range()函数,含头不含尾
 2 # 0~4
 3 for i in range(5):
 4     print(i)
 5 
 6 # 2~7
 7 for i in range(2, 8):
 8     print(i)
 9 
10 # 1~9 步长为3
11 for i in range(1, 10, 3):
12     print(i)

 

range()函数与for循环结合:

1 languaegs = ['c','c++','java','python']
2 for i in range(len(languaegs)):
3     print(i, ':', languaegs[i])

 

发表评论

电子邮件地址不会被公开。 必填项已用*标注

网站地图xml地图
Copyright @ 2010-2019 美高梅手机版4858 版权所有