python基礎學習之開發環境

IDE (集成開發環境)

VIM #經典的linux下的文本編輯器.
Emacs #linux文本編輯器,比vim 更容易使用
Eclipse #Java IDE ,支持python,c,c++
Visual Studio #微軟開發的IDE ,支持python, c++,java,c#
sublime python開發
pycharm 是主要用於python 開發的IDE
notepad++

字符串格式化輸出

佔位符 %s %d 必須輸入數字 %f 輸入的小數

name = input( "Name: ")
age = int(input("Age: "))
job = input("Job: ")
salary =input("Salary: ")

#判斷salary輸入的是不是數字
# if salary.isdigit():
#     salary = int(salary)
# else:
#     exit("must input digit")  #退出程序

msg = '''
-------------- info  of %s  ----------------
Naem : %s
Age : %s     
Job : %s    
Salary : %d
----------------- end  ----------------------
''' % (name,name,age,job,salary)

print( msg)

數據運算

數據類型的初識

1.數字
1.1整數int(integer)
1.11整型,代表的數據有限,正負2的30次方(1073741824)
1.12長整型,代表的數據較大
在python3已經不區分整型與長整型,統一叫整型
2.字符串
2.11.salary.isdigit 中間的點的意思取這個字符串的屬性
3.浮點型,是用來處理實數,是所有理數和無理數的集合,在大多數時候都是小數
4.複數:

布爾值

只有兩種狀態,分別是真(True),假(False)

for循環

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

for 循環打印奇數

for  i  in  range(1,101,2):     # 2這個數字叫步長

        print(i)
for  i  in  range(1,101):
    if  i % 2 == 1     #取餘
        print(i)

這兩種方式,執行結果一樣…

打印某段中間段的數字不打印.
for  i  in  range(1,101):
    if  i < 50 or i  > 70:
        print(i)

這樣50到70就不會被打印…

循環登陸
	_user = "aa"
_password = "123"

for i in range(3):
    username = input("Username: ")
    userPassword = input("userPassword: ")
    if username == _user and userPassword == _password :
        print("Welcome %s login ....." % _user)
        break    #終端,退出循環
    else:
        print("賬號密碼錯誤,請重新輸入")
加上一個變量,多次錯誤的時候進行一個判斷
_user = "aa"
_password = "123"

pass_authention = False
for i in range(3):
    username = input("Username: ")
    userPassword = input("userPassword: ")
   if username == _user and userPassword == _password :
        print("Welcome %s login ....." % _user)
        pass_authention = True
        break
    else:
        print("賬號密碼錯誤,請重新輸入")
if not pass_authention :
    print("不要試了")
_user = "aa"
_password = "123"

for i in range(3):
    username = input("Username: ")
    userPassword = input("userPassword: ")
   if username == _user and userPassword == _password :
        print("Welcome %s login ....." % _user)
        break   #for循環,終端,
    else:
        print("賬號密碼錯誤,請重新輸入")
else:  #只要上面for循環能夠正常執行完畢,就執行下面語句,
    print("不要試了")

上面兩個執行結果一樣…

用while循環修改

_user = "aa"
_password = "123"
conuter = 0
while conuter < 3:
    username = input("Username: ")
    userPassword = input("userPassword: ")
   if username == _user and userPassword == _password :
        print("Welcome %s login ....." % _user)
        break   #for循環,終端,
    else:
        print("賬號密碼錯誤,請重新輸入")
    conuter += 1
else:  #只要上面for循環能夠正常執行完畢,就執行下面語句,
    print("不要試了")

再多加一個判斷

_user = "aa"
_password = "123"
conuter = 0
while conuter < 3:
    username = input("Username: ")
    userPassword = input("userPassword: ")
    if username == _user and userPassword == _password :
        print("Welcome %s login ....." % _user)
        break   #for循環,終端,
    else:
        print("賬號密碼錯誤,請重新輸入")
    conuter += 1
    if conuter == 3:
        keep_going_choec = input("還要試試?: [y/n]")
        if keep_going_choec == "y":
            conuter = 0
else:  #只要上面for循環能夠正常執行完畢,就執行下面語句,
    print("不要試了")

continue #跳出本次循環,繼續下一次循環.
break # 跳出當層程序循環
exit #

多層關聯,同時跳出循環

exit_flag = False    #先定義

for i in range (10):
    if i < 5:
        continue
    print(i)
    for j in range(10):
        print(j)
        if j == 6:
            exit_flag = True    #當定義的等於True的時候,跳出循環
            break
    if exit_flag:   #當上面跳出循環,這層也跳出循環
        break

字符串,列表,元組,字典

列表

列表的創建用中括號

a=['aa','bb','cc','dd','ee']

對列表進行增刪改查

通過列表的索引值來取對應的信息

切片查詢
print(a[1])

執行結果

bb

切片,同時取多個,中括號中間加個冒號,再加上對應的下標

print(a[1:3])

執行結果

['bb', 'cc']

如果在不知道這個列表有多少的情況下,想看所有,就是冒號後面什麼都不加

print(a[1:])  #取到最後
print(a[1:-1])   #取到倒數第二值
print(a[1:-1:1]) #從左到右一個一個去取,後面的這個1,叫步長..
print(a[3::-1])   #從右到左,從下標是3的開始一個一個的取.

執行結果

['bb', 'cc', 'dd', 'ee']
['bb', 'cc', 'dd']
['bb', 'cc', 'dd']
['dd', 'cc', 'bb', 'aa']

append #這個插入直接添加到列表的最後
insert #可以把某個內容添加到某一個位置

####### oppend插入

a=['aa','bb','cc','dd','ee']
a.append('ff')
print(a)

執行結果

['aa', 'bb', 'cc', 'dd', 'ee', 'ff']

####### insert插入

a=['aa','bb','cc','dd','ee']
a.insert(1,'ff')
print(a)

執行結果

['aa', 'ff', 'bb', 'cc', 'dd', 'ee']

修改

直接通過賦值操作,就是修改…

a=['aa','bb','cc','dd','ee']
a[1]='tt'
print(a)

執行結果

['aa', 'tt', 'cc', 'dd', 'ee']

同時修改多個

a=['aa','bb','cc','dd','ee']
a[1:3]=['a','b']
print(a)

執行結果

['aa', 'a', 'b', 'dd', 'ee']

刪除

####### remove

a=['aa','bb','cc','dd','ee']
a.remove('aa')    #後面直接添加需要刪除的值
print(a)

執行結果

['bb', 'cc', 'dd', 'ee']

####### POP

a=['aa','bb','cc','dd','ee']
b=a.pop(1)    #根據索引來刪除對應的值
print(a)
print(b)  #返回刪除的值

執行結果

['aa', 'cc', 'dd', 'ee']
bb

####### del

a=['aa','bb','cc','dd','ee']
del a[0]  #可以刪除所有
print(a)

執行結果

['bb', 'cc', 'dd', 'ee']
a=['aa','bb','cc','dd','ee']
del a   #對象被刪除了
print(a)

執行結果

print(a)
NameError: name 'a' is not defined

其他操作

count

主要作用統計某個元素在列表中出現的次數.

pr=['to','not','or','be','to','no'].count('to')
print(pr)

執行結果

2
extend

主要在列表的末尾一次性追加另一個序列中的多個值…

b = [1,2,3]
c = [4,5,6]
b.extend(c)

print(b)
print(c)

執行結果

[1, 2, 3, 4, 5, 6]
[4, 5, 6]
index

通過列表值來取某個值的位置(索引值又叫下標)

a = ['aa','bb','cc','dd','ee']
print(a.index('bb'))

執行結果

1
用index取在同一個列表中多個相同值的索引值
a = ['aa','bb','cc','dd','ee','dd','cc']
first_cc_index =a.index("cc")    #先取出,在大列表中第一個值的索引值
print("first_cc_index",first_cc_index)
little_list = a[first_cc_index+1:]     #切片取小列表

second_cc_index = little_list.index("cc")  #取第二個值在小列表的位置
print("second_cc_index",second_cc_index)

second_cc_index_in_big_list = first_cc_index +second_cc_index + 1  #通過第一值的位置和小列值的位置,來計算出,第二個值在大列表的位置
print("second_cc_index_in_big_list",second_cc_index_in_big_list)
print("second cc:",a[second_cc_index_in_big_list])

執行結果

first_cc_index 2
second_cc_index 3
second_cc_index_in_big_list 6
second cc: cc
reverse

列表值倒序

a = ['aa','bb','cc','dd','ee','dd','cc']
a.reverse()
print(a)

執行結果

['cc', 'dd', 'ee', 'dd', 'cc', 'bb', 'aa']
sort

排序由小到大
也可以對字母進行排序,字母是按照Assic碼列表排序

a = [1,0,3,9,2,4,6,7]
a.sort(reverse=True) 
#a.reverse()  
print(a)

執行結果

[0, 1, 2, 3, 4, 6, 7, 9]
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章